 |
ATLAS Offline Software
|
Go to the documentation of this file.
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;
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;
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
std::string toString() const
const StripDataVector & phi_center() const
Returns a vector of strip cell e/eta/phi data for the central phi row of the neighborhood.
double secondaryPeakEnergy_back(const StripDataVector &, std::size_t)
auto rend() const noexcept
AlgTool that to test whether expected the TIP values generated by data supplied by eEmMultTestBench c...
::StatusCode StatusCode
StatusCode definition for legacy code.
std::size_t maxCellIndex() const
Returns the index of the maximum energy cell in this neighbourhood.
std::ostream & operator<<(std::ostream &os, const GlobalSim::ERatio &er)
double secondaryPeakEnergy_forw(const StripDataVector &, std::size_t)
const StripDataVector & phi_low() const
Returns a vector of strip cell e/eta/phi data for the low phi row of the neighborhood.
StatusCode run(const LArStripNeighborhood &in, bool &result)
ERatio(const std::string &name, double thresh=50., double maxERCut=2.5)
const StripDataVector & phi_high() const
Returns a vector of strip cell e/eta/phi data for the central high row of the neighborhood.
Class to hold windows of LAr strip cells in a the neighbourhood of a eFexRoI.
auto rbegin() const noexcept
std::vector< StripData > StripDataVector
bool eratioCut(double p_peakE, double s_peakE)