23 declareInterface<IjFEXsumETAlgo>(
this);
31 ATH_CHECK(m_jTowerContainerKey.initialize());
32 return StatusCode::SUCCESS;
39 if(! m_jTowerContainer.isValid()) {
40 ATH_MSG_ERROR(
"Could not retrieve jTowerContainer " << m_jTowerContainerKey.key());
41 return StatusCode::FAILURE;
44 return StatusCode::SUCCESS;
51 return StatusCode::SUCCESS;
57 ATH_MSG_DEBUG(
"---------------- jFEXsumETAlgo::setup ----------------");
60 for(
int ieta=8;ieta<16;ieta++){
61 m_FPGA[iphi].push_back(
FPGA[iphi][ieta]);
68 ATH_MSG_DEBUG(
"---------------- jFEXsumETAlgo::setup ----------------");
71 for(
int ieta=8;ieta<17;ieta++){
72 m_FPGA[iphi].push_back(
FPGA[iphi][ieta]);
75 m_FPGA_phi02.resize(16);
76 for(
int iphi=0;iphi<16;iphi++){
77 for(
int ieta=17;ieta<21;ieta++){
78 m_FPGA_phi02[iphi].push_back(
FPGA[iphi][ieta]);
81 m_FPGA_fcal.resize(8);
82 for(
int iphi=0;iphi<8;iphi++){
84 m_FPGA_fcal[iphi].push_back(
FPGA[iphi][ieta]);
93 ATH_MSG_DEBUG(
"---------------- jFEXsumETAlgo::buildBarrelSumET ----------------");
98 m_SumETSat.resize(8,0);
100 for(
uint iphi=0;iphi<m_FPGA.size();iphi++){
101 for(
uint ieta=0;ieta<m_FPGA[iphi].size();ieta++){
102 m_SumET[ieta]+=getTTowerET(m_FPGA[iphi][ieta]);
103 m_SumETSat[ieta] = m_SumETSat[ieta] || getTTowerSat(m_FPGA[iphi][ieta]);
112 ATH_MSG_DEBUG(
"---------------- jFEXsumETAlgo::buildFWDSumET ----------------");
115 m_SumET.resize(14,0);
117 m_SumETSat.resize(14,0);
120 for(
uint iphi=0;iphi<m_FPGA.size();iphi++){
121 for(
uint ieta=0;ieta<m_FPGA[iphi].size();ieta++){
122 m_SumET[ieta]+=getTTowerET(m_FPGA[iphi][ieta]);
123 m_SumETSat.at(ieta) = m_SumETSat.at(ieta) || getTTowerSat(m_FPGA[iphi][ieta]);
128 for(
uint iphi=0;iphi<m_FPGA_phi02.size();iphi++){
129 for(
uint ieta=0;ieta<m_FPGA_phi02[iphi].size();ieta++){
130 m_SumET[ieta+9]+=getTTowerET(m_FPGA_phi02[iphi][ieta]);
131 m_SumETSat.at(ieta+9) = m_SumETSat.at(ieta+9) || getTTowerSat(m_FPGA_phi02[iphi][ieta]);
136 for(
uint iphi=0;iphi<m_FPGA_fcal.size();iphi++){
137 for(
uint ieta=0;ieta<m_FPGA_fcal[iphi].size();ieta++){
138 m_SumET[13]+=getTTowerET(m_FPGA_fcal[iphi][ieta]);
139 m_SumETSat.at(13) = m_SumETSat.at(13) || getTTowerSat(m_FPGA_fcal[iphi][ieta]);
147 uint max = m_SumET.size() > (
bin + 1) ?
bin : m_SumET.size();
150 for(
uint ieta=0;ieta<
max;ieta++){
151 m_SumlowEta+=m_SumET.at(ieta);
152 m_SumlowEtaSat = m_SumlowEtaSat || m_SumETSat.at(ieta);
154 return {m_SumlowEta,m_SumlowEtaSat};
161 uint min = m_SumET.size() > (
bin + 1) ?
bin : m_SumET.size();
164 for(
uint ieta=
min;ieta<m_SumET.size();ieta++){
165 m_SumhighEta+=m_SumET.at(ieta);
166 m_SumhighEtaSat = m_SumhighEtaSat || m_SumETSat.at(ieta);
168 return {m_SumhighEta,m_SumhighEtaSat};
178 const LVL1::jTower * tmpTower = m_jTowerContainer->findTower(TTID);
188 auto itr = m_map_Etvalues.find(TTID);
189 if( itr == m_map_Etvalues.end()) {
193 return (itr->second).at(1);
198 m_map_Etvalues=et_map;