55 m_gtEnergySumTemplate =
cp.gtEnergySumTemplate();
56 m_uGtB =
cp.getuGtB();
58 m_condMaxNumberObjects =
cp.condMaxNumberObjects();
59 m_condLastResult =
cp.condLastResult();
60 m_combinationsInCond =
cp.getCombinationsInCond();
62 m_verbosity =
cp.m_verbosity;
80 m_gtEnergySumTemplate = eSumTempl;
94 bool condResult =
false;
101 (combinationsInCond()).
clear();
104 objectsInComb.clear();
109 int useBx = bxEval + m_gtEnergySumTemplate->condRelativeBx();
112 if ((useBx < candVec->getFirstBX()) || (useBx > candVec->
getLastBX())) {
117 int numberObjects = candVec->
size(useBx);
118 if (numberObjects < 1) {
123 bool MissingEnergy =
false;
125 switch ((m_gtEnergySumTemplate->objectType())[0]) {
128 MissingEnergy =
true;
132 MissingEnergy =
false;
136 MissingEnergy =
false;
140 MissingEnergy =
true;
144 MissingEnergy =
false;
148 MissingEnergy =
true;
152 MissingEnergy =
false;
156 MissingEnergy =
false;
160 MissingEnergy =
false;
164 MissingEnergy =
false;
168 MissingEnergy =
false;
172 MissingEnergy =
false;
176 MissingEnergy =
false;
180 MissingEnergy =
false;
184 MissingEnergy =
false;
189 MissingEnergy =
false;
194 MissingEnergy =
false;
199 MissingEnergy =
false;
204 MissingEnergy =
false;
209 MissingEnergy =
false;
214 MissingEnergy =
false;
219 MissingEnergy =
false;
224 MissingEnergy =
false;
229 <<
"Unmatched object type from template to EtSumType, (m_gtEnergySumTemplate->objectType())[0] = "
230 << (m_gtEnergySumTemplate->objectType())[0] << std::endl;
236 unsigned int candEt = 0;
237 unsigned int candPhi = 0;
238 bool candOverflow =
false;
239 for (
int iEtSum = 0; iEtSum < numberObjects; ++iEtSum) {
243 candEt =
cand.hwPt();
244 candPhi =
cand.hwPhi();
259 bool condGEqVal = m_gtEnergySumTemplate->condGEq();
262 bool myres = checkBit(candEt, centbit);
265 LogDebug(
"L1TGlobal") <<
"\t\t l1t::EtSum failed Centrality bit" << std::endl;
271 LogDebug(
"L1TGlobal") <<
"\t\t l1t::EtSum failed checkThreshold" << std::endl;
275 if (!condGEqVal && candOverflow)
284 LogDebug(
"L1TGlobal") <<
"\t\t l1t::EtSum failed checkRange(phi)" << std::endl;
293 objectsInComb.push_back(indexObj);
294 (combinationsInCond()).push_back(objectsInComb);
304 m_gtEnergySumTemplate->print(myCout);