56 int etSumEtaMinEt = 4;
57 int etSumEtaMaxEt = 17;
58 int etSumEtaMinHt = 4;
59 int etSumEtaMaxHt = 17;
63 std::vector<SimpleRegion> regionEtVect;
64 std::vector<SimpleRegion> regionHtVect;
67 bool regionOverflowEt(
false);
68 bool regionOverflowHt(
false);
70 if(region.hwEta() >= etSumEtaMinEt && region.hwEta() <= etSumEtaMaxEt)
72 if(region.hwPt() >= 1023)
74 regionOverflowEt =
true;
77 if ( region.hwEta() >= etSumEtaMinHt && region.hwEta() <= etSumEtaMaxHt)
79 if(region.hwPt() >= 1023)
81 regionOverflowHt =
true;
91 for (
auto& region : regions) {
92 if ( region.hwEta() >= etSumEtaMinEt && region.hwEta() <= etSumEtaMaxEt)
94 if(region.hwPt() >= etSumEtThresholdEt)
97 r.ieta = region.hwEta();
98 r.iphi = region.hwPhi();
100 regionEtVect.push_back(r);
103 if ( region.hwEta() >= etSumEtaMinHt && region.hwEta() <= etSumEtaMaxHt)
105 if(region.hwPt() >= etSumEtThresholdHt)
108 r.ieta = region.hwEta();
109 r.iphi = region.hwPhi();
110 r.et = region.hwPt();
111 regionHtVect.push_back(r);
116 int sumET,
MET, iPhiET;
119 int sumHT,
MHT, iPhiHT;
127 if(MET >= 0xfff || regionOverflowEt)
129 if(MHT >= 0x7f || regionOverflowHt)
131 if(sumET >= 0xfff || regionOverflowEt)
133 if(sumHT >= 0xfff || regionOverflowHt)
143 const ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > etLorentz(0,0,0,0);
149 std::vector<l1t::EtSum> preGtEtSums;
150 preGtEtSums.reserve(4);
152 preGtEtSums.push_back(etMiss);
153 preGtEtSums.push_back(htMiss);
154 preGtEtSums.push_back(etTot);
155 preGtEtSums.push_back(htTot);
double etSumEtThreshold(unsigned isum) const
std::tuple< int, int, int > doSumAndMET(const std::vector< SimpleRegion > ®ionEt, ETSumType sumType)
int DiJetPhi(const std::vector< l1t::Jet > *jets) const
void EtSumToGtScales(CaloParamsHelper const *params, const std::vector< l1t::EtSum > *input, std::vector< l1t::EtSum > *output)
CaloParamsHelper const *const params_
uint16_t MHToverHT(uint16_t, uint16_t) const