diff --git a/Trigger/TrigT1/TrigT1CaloFexSim/TrigT1CaloFexSim/JGTowerReader.h b/Trigger/TrigT1/TrigT1CaloFexSim/TrigT1CaloFexSim/JGTowerReader.h index 5f866a88803d66715323b61dc991a6009460ffff..2b7cb03e442bc6830f6e7399f91dae765859a892 100644 --- a/Trigger/TrigT1/TrigT1CaloFexSim/TrigT1CaloFexSim/JGTowerReader.h +++ b/Trigger/TrigT1/TrigT1CaloFexSim/TrigT1CaloFexSim/JGTowerReader.h @@ -181,7 +181,15 @@ class JGTowerReader: public ::AthAlgorithm { std::shared_ptr<TowerHelper> gT_helper; unsigned int m_eventCount = 0; - SG::AuxElement::Accessor<float>* acc_rho = new SG::AuxElement::Accessor<float>("Rho_avg"); + SG::AuxElement::Accessor<float>* acc_rho_barrel = new SG::AuxElement::Accessor<float>("Rho_barrel"); + SG::AuxElement::Accessor<float>* acc_rhoA = new SG::AuxElement::Accessor<float>("RhoA"); + SG::AuxElement::Accessor<float>* acc_rhoB = new SG::AuxElement::Accessor<float>("RhoB"); + SG::AuxElement::Accessor<float>* acc_rhoC = new SG::AuxElement::Accessor<float>("RhoC"); + + SG::AuxElement::Accessor<float>* acc_threshA = new SG::AuxElement::Accessor<float>("ThreshA"); + SG::AuxElement::Accessor<float>* acc_threshB = new SG::AuxElement::Accessor<float>("ThreshB"); + SG::AuxElement::Accessor<float>* acc_threshC = new SG::AuxElement::Accessor<float>("ThreshC"); + SG::AuxElement::Accessor<float>* acc_mht = new SG::AuxElement::Accessor<float>("MHT"); SG::AuxElement::Accessor<float>* acc_mst = new SG::AuxElement::Accessor<float>("MST"); }; diff --git a/Trigger/TrigT1/TrigT1CaloFexSim/src/JGTowerReader.cxx b/Trigger/TrigT1/TrigT1CaloFexSim/src/JGTowerReader.cxx index b1be62ac16342f7a25306ea7209f3650ebea19f8..e543d8124c815c74c07d9736528946da1b7c9679 100644 --- a/Trigger/TrigT1/TrigT1CaloFexSim/src/JGTowerReader.cxx +++ b/Trigger/TrigT1/TrigT1CaloFexSim/src/JGTowerReader.cxx @@ -115,7 +115,14 @@ JGTowerReader::~JGTowerReader() { delete jSeeds; delete jJetSeeds; delete gSeeds; - delete acc_rho; + delete acc_rhoA; + delete acc_rhoB; + delete acc_rhoC; + delete acc_rho_barrel; + delete acc_threshA; + delete acc_threshB; + delete acc_threshC; + delete acc_mht; delete acc_mst; @@ -155,7 +162,15 @@ StatusCode JGTowerReader::initialize() { CHECK( ReadTowerMap() ); } - acc_rho = new SG::AuxElement::Accessor<float>("Rho"); + acc_rhoA = new SG::AuxElement::Accessor<float>("RhoA"); + acc_rhoB = new SG::AuxElement::Accessor<float>("RhoB"); + acc_rhoC = new SG::AuxElement::Accessor<float>("RhoC"); + acc_rho_barrel = new SG::AuxElement::Accessor<float>("Rho_barrel"); + + acc_threshA = new SG::AuxElement::Accessor<float>("ThreshA"); + acc_threshB = new SG::AuxElement::Accessor<float>("ThreshB"); + acc_threshC = new SG::AuxElement::Accessor<float>("ThreshC"); + acc_mht = new SG::AuxElement::Accessor<float>("MHT"); acc_mst = new SG::AuxElement::Accessor<float>("MST"); @@ -454,6 +469,11 @@ StatusCode JGTowerReader::GFexAlg(const xAOD::JGTowerContainer* gTs){ xAOD::JGTowerContainer* gCaloTowers = new xAOD::JGTowerContainer(); gCaloTowers->setStore(gCaloTowersAux); + //add container for rhoA,B,C using Run2 EnergySumRoIAux container + xAOD::EnergySumRoIAuxInfo* RhoContAux = new xAOD::EnergySumRoIAuxInfo(); + xAOD::EnergySumRoI* RhoCont = new xAOD::EnergySumRoI(); + RhoCont->setStore(RhoContAux); + for(unsigned int t = 0; t < gTs->size(); t++){ const xAOD::JGTower* gt_em = gTs->at(t); const float eta = gt_em->eta(); @@ -535,6 +555,15 @@ StatusCode JGTowerReader::GFexAlg(const xAOD::JGTowerContainer* gTs){ float rho_barrel = METAlg::Rho_avg(gCaloTowers, false); + (*acc_rhoA)(*RhoCont) = rhoA; + (*acc_rhoB)(*RhoCont) = rhoB; + (*acc_rhoC)(*RhoCont) = rhoC; + (*acc_rho_barrel)(*RhoCont) = rho_barrel; + + (*acc_threshA)(*RhoCont) = thresh_a; + (*acc_threshB)(*RhoCont) = thresh_b; + (*acc_threshC)(*RhoCont) = thresh_c; + for(unsigned int t = 0; t < gCaloTowers->size(); t++){ const xAOD::JGTower* tower = gCaloTowers->at(t); const float eta = tower->eta(); @@ -662,6 +691,9 @@ StatusCode JGTowerReader::GFexAlg(const xAOD::JGTowerContainer* gTs){ CHECK(evtStore()->record(gBs, "gBlocks")); CHECK(evtStore()->record(gBAux, "gBlocksAux.")); + CHECK(evtStore()->record(RhoCont,"EventVariables")); + CHECK(evtStore()->record(RhoContAux,"EventVariablesAux.")); + delete h_fpga_a; delete h_fpga_b; delete h_fpga_c; @@ -722,7 +754,6 @@ StatusCode JGTowerReader::ProcessObjects(){ METCont->setEnergyX(met->ex); METCont->setEnergyY(met->ey); METCont->setEnergyT(met->et); - (*acc_rho)(*METCont) = met->rho; (*acc_mht)(*METCont) = met->mht; (*acc_mst)(*METCont) = met->mst; CHECK(evtStore()->record(METCont,Form("%s_MET",it->first.Data())));