21 if (
a->getFiredLayerCntConstr() >
b->getFiredLayerCntConstr())
23 else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() && aRefLayerLogicNum < bRefLayerLogicNum) {
25 }
else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() && aRefLayerLogicNum == bRefLayerLogicNum &&
26 a->getPdfSumConstr() >
b->getPdfSumConstr())
28 else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() && aRefLayerLogicNum == bRefLayerLogicNum &&
29 a->getPdfSumConstr() ==
b->getPdfSumConstr() &&
a->getPatternNumConstr() >
b->getPatternNumConstr())
31 else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() && aRefLayerLogicNum == bRefLayerLogicNum &&
32 a->getPdfSumConstr() ==
b->getPdfSumConstr() &&
a->getPatternNumConstr() ==
b->getPatternNumConstr() &&
33 a->getRefHitNumber() <
b->getRefHitNumber())
47 if (
a->getFiredLayerCntConstr() >
b->getFiredLayerCntConstr())
49 else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() &&
a->getPdfSumConstr() >
b->getPdfSumConstr())
51 else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() &&
52 a->getPdfSumConstr() ==
b->getPdfSumConstr() &&
a->getPatternNumConstr() >
b->getPatternNumConstr())
54 else if (
a->getFiredLayerCntConstr() ==
b->getFiredLayerCntConstr() &&
55 a->getPdfSumConstr() ==
b->getPdfSumConstr() &&
a->getPatternNumConstr() ==
b->getPatternNumConstr() &&
56 a->getRefHitNumber() <
b->getRefHitNumber())
70 if (
a->getPdfSumConstr() >
b->getPdfSumConstr())
72 else if (
a->getPdfSumConstr() ==
b->getPdfSumConstr() &&
a->getPatternNumConstr() >
b->getPatternNumConstr())
74 else if (
a->getPdfSumConstr() ==
b->getPdfSumConstr() &&
a->getPatternNumConstr() ==
b->getPatternNumConstr() &&
75 a->getRefHitNumber() <
b->getRefHitNumber())
93 if (aRefLayerLogicNum < bRefLayerLogicNum) {
95 }
else if (aRefLayerLogicNum == bRefLayerLogicNum &&
a->getPdfSum() >
b->getPdfSum())
97 else if (aRefLayerLogicNum == bRefLayerLogicNum &&
a->getPdfSum() ==
b->getPdfSum() &&
98 a->getPatternNum() >
b->getPatternNum())
100 else if (aRefLayerLogicNum == bRefLayerLogicNum &&
a->getPdfSum() ==
b->getPdfSum() &&
101 a->getPatternNum() ==
b->getPatternNum() &&
a->getRefHitNumber() <
b->getRefHitNumber())
108 std::sort(muonsIN.rbegin(), muonsIN.rend(), customLessByLLH);
110 std::sort(muonsIN.rbegin(), muonsIN.rend(), customLessByFPLLH);
112 std::sort(muonsIN.rbegin(), muonsIN.rend(), customByRefLayer);
114 std::sort(muonsIN.rbegin(), muonsIN.rend(), customLess);
119 for (
unsigned int iMu1 = 0; iMu1 < muonsIN.size(); iMu1++) {
120 refHitCleanCandsFixedEta.emplace_back(
new AlgoMuon(*(muonsIN[iMu1])));
126 for (
unsigned int iMu1 = 0; iMu1 < refHitCleanCandsFixedEta.size(); iMu1++) {
127 auto& muIN1 = refHitCleanCandsFixedEta[iMu1];
131 if (!muIN1->isValid() || muIN1->isKilled())
134 for (
unsigned int iMu2 = refHitCleanCandsFixedEta.size() - 1; iMu2 >= iMu1 + 1; iMu2--) {
135 auto& muIN2 = refHitCleanCandsFixedEta[iMu2];
136 if (muIN2->isValid() &&
139 refHitCleanCandsFixedEta[iMu2]->kill();
140 refHitCleanCandsFixedEta[iMu1]->getKilledMuons().emplace_back(muIN2);
145 ((
abs(muIN1->getEtaHw()) == 75 ||
abs(muIN1->getEtaHw()) == 79 ||
abs(muIN1->getEtaHw()) == 92)) &&
146 ((
abs(muIN2->getEtaHw()) != 75 &&
abs(muIN2->getEtaHw()) != 79 &&
147 abs(muIN2->getEtaHw()) != 92))) {
149 muIN1->setEta(muIN2->getEtaHw());
163 for (
const auto&
mu : refHitCleanCandsFixedEta) {
164 if (
mu->isValid() && !(
mu->isKilled()))
165 refHitCleanCands.emplace_back(
mu);
166 if (refHitCleanCands.size() >= 3)
170 while (refHitCleanCands.size() < 3)
171 refHitCleanCands.emplace_back(
new AlgoMuon());
173 return refHitCleanCands;
int procPhiToGmtPhi(int procPhi) const
StubEtaEncoding getStubEtaEncoding() const
unsigned int fwVersion() const
Container::value_type value_type
Abs< T >::type abs(const T &t)
const std::vector< int > & getRefToLogicNumber() const
const std::string & getGhostBusterType() const
std::vector< AlgoMuonPtr > AlgoMuons
static unsigned int etaBits2HwEta(unsigned int eta)
const OMTFConfiguration * omtfConfig