11 if (a->getCh().first==b->getCh().first)
12 return a->getCh().second < b->getCh().second;
14 return a->getCh().first < b->getCh().first;
17 if (a->getCh().first==b.first)
18 return a->getCh().second < b.second;
20 return a->getCh().first < b.first;
23 return (a->getCh().first==b->getCh().first);
28 return a->getDetid() < b->getDetid();
31 return a->getDetid() <
b;
36 return a->getGbtid() < b->getGbtid();
39 return a->getGbtid() <
b;
93 if (itid !=
fedCabling_.end() && (*itid)->getCh()==fedch)
96 throw cms::Exception(
"IndexNotFound") <<
"No connection corresponding to FED id/ch = " << fedch.first <<
"/" << fedch.second;
102 if (itch !=
detCabling_.end() && (*itch)->getDetid()==detid)
105 throw cms::Exception(
"IndexNotFound") <<
"No connection corresponding to detid = 0x" << std::hex << detid <<
std::dec;
111 if (itch !=
gbtCabling_.end() && (*itch)->getGbtid()==gbtid)
114 throw cms::Exception(
"IndexNotFound") <<
"No connection corresponding to gbtid = 0x" << std::hex << gbtid <<
std::dec;
126 std::pair< key, key > range = std::equal_range(resultStore.begin(),resultStore.end(),
141 std::sort(resultStore.begin(),resultStore.end(),
powerOrdering);
143 std::pair< key, key > range = std::equal_range(resultStore.begin(),resultStore.end(),
152 std::string mystring(
"Summary of the cabling\n======================\n");
153 std::stringstream
ss;
155 ss <<
"Number of modules: " <<
connections_.size() << std::endl;
157 ss <<
"Number of FEDs: ";
159 ss <<
std::distance(tmpc.begin(),std::unique(tmpc.begin(),tmpc.end(),
fedeq)) << std::endl;
160 ss <<
"Number of cooling loops: ";
164 ss <<
"Number of power groups: ";
167 ss <<
std::distance(tmp.begin(),std::unique(tmp.begin(),tmp.end(),
poweq)) << std::endl;
168 mystring += ss.str();
175 mystring += it->description(compact);
static bool powerOrdering(const Phase2TrackerModule &a, const Phase2TrackerModule &b)
Phase2TrackerCabling filterByCoolingLine(uint32_t coolingLine) const
Phase2TrackerCabling filterByPowerGroup(uint32_t powerGroup) const
const Phase2TrackerModule & findFedCh(std::pair< unsigned int, unsigned int > fedch) const
static bool gbtidOrdering(key a, key b)
static bool coolingOrdering(const Phase2TrackerModule &a, const Phase2TrackerModule &b)
static bool powerComp(const Phase2TrackerModule &a, uint32_t b)
uint32_t getPowerGroup() const
uint32_t getCoolingLoop() const
static bool chOrdering(key a, key b)
static bool cooleq(const Phase2TrackerModule &a, const Phase2TrackerModule &b)
static bool coolingComp(const Phase2TrackerModule &a, uint32_t b)
static bool poweq(const Phase2TrackerModule &a, const Phase2TrackerModule &b)
std::vector< Phase2TrackerModule >::const_iterator key
static bool detidOrdering(key a, key b)
std::string summaryDescription() const
std::string description(bool compact=false) const
static bool detidComp(key a, uint32_t b)
std::vector< std::vector< double > > tmp
static bool chComp(key a, std::pair< unsigned int, unsigned int > b)
static bool fedeq(key a, key b)
static bool gbtidComp(key a, uint32_t b)
const Phase2TrackerModule & findDetid(uint32_t detid) const
std::vector< Phase2TrackerModule > store
const Phase2TrackerModule & findGbtid(uint32_t gbtid) const
std::vector< key > cabling