7 #include "GaudiKernel/StatusCode.h"
15 m_name{
name}, m_minDeltaE{minDeltaE}, m_maxERCut{maxERCut} {
24 auto p_peakE = nbhd.
phi_center().at(maxCellInd).m_e;
42 return StatusCode::SUCCESS;
47 std::size_t maxCellInd) {
58 auto sz = phi_str.size();
59 if (sz < 3 or maxCellInd >
sz) {
return peakE;}
62 phi_str.at(maxCellInd+1).m_e < maxStripE -
m_minDeltaE;
64 for(
auto iter =
std::begin(phi_str)+maxCellInd+2;
73 auto c_cellE = iter->m_e;
74 auto p_cellE = (iter-1)->m_e;
86 std::size_t maxCellInd) {
100 if (
sz < 2) {
return peakE;}
103 phi_str.at(maxCellInd-1).m_e < maxStripE -
m_minDeltaE;
107 std::size_t
start = phi_str.size() - maxCellInd + 1;
108 for(
auto iter = std::rbegin(phi_str)+
start;
109 iter != std::rend(phi_str);
113 valley = iter->m_e < ((iter-1)->m_e) -
m_minDeltaE;
117 auto c_cellE = iter->m_e;
118 auto p_cellE = (iter-1)->m_e;
130 if (p_peakE <= 0 or s_peakE <= 0) {
return false;}
137 std::stringstream
ss;
140 <<
" minimum strip E difference to be significant " <<
m_minDeltaE
141 <<
" upper ERatio limit for pi0 candidate " <<
m_maxERCut