19 for (std::size_t ichan{0}; ichan < mDataFECHG.size(); ++ichan) {
20 mDataFECHG[ichan] +=
other.mDataFECHG[ichan];
21 mDataFECLG[ichan] +=
other.mDataFECLG[ichan];
23 for (std::size_t ichan{0}; ichan < mDataLEDMONHG.size(); ++ichan) {
24 mDataLEDMONHG[ichan] +=
other.mDataLEDMONHG[ichan];
25 mDataLEDMONLG[ichan] +=
other.mDataLEDMONLG[ichan];
32 auto maxentries =
LEDMON ? mDataLEDMONHG.size() : mDataFECHG.size();
33 if (tower >= maxentries) {
38 mDataLEDMONLG[tower].add(
adc);
40 mDataLEDMONHG[tower].add(
adc);
44 mDataFECLG[tower].add(
adc);
46 mDataFECHG[tower].add(
adc);
53 auto maxentries =
LEDMON ? mDataLEDMONHG.size() : mDataFECHG.size();
54 if (tower >= maxentries) {
60 return mDataLEDMONLG[tower].getMeanRMS2<
double>();
62 return mDataLEDMONHG[tower].getMeanRMS2<
double>();
66 return mDataFECLG[tower].getMeanRMS2<
double>();
68 return mDataFECHG[tower].getMeanRMS2<
double>();
75 auto maxentries =
LEDMON ? mDataLEDMONHG.size() : mDataFECHG.size();
76 if (tower >= maxentries) {
82 return mDataLEDMONLG[tower].n;
84 return mDataLEDMONHG[tower].n;
88 return mDataFECLG[tower].n;
90 return mDataFECHG[tower].n;
97 for (
auto& acc : mDataFECHG) {
100 for (
auto& acc : mDataFECLG) {
103 for (
auto& acc : mDataLEDMONHG) {
106 for (
auto& acc : mDataLEDMONLG) {
Handling access to invalid channel index (out-of-bounds)
const char * what() const noexcept final
Get error message of the exception.
Exchange container between PedestalProcessorDevice and PedestalAggregatorDevice.
int getEntriesForChannel(unsigned short tower, bool lowGain, bool LEDMON) const
Get number of entries for a certain channel.
void reset()
Reset object.
void fillADC(unsigned short adc, unsigned short tower, bool lowGain, bool LEDMON)
Fill ADC value for certain channel.
PedestalValue getValue(unsigned short tower, bool lowGain, bool LEDMON) const
Get mean ADC and RMS for a certain channel.
std::tuple< double, double > PedestalValue
PedestalProcessorData & operator+=(const PedestalProcessorData &other)
Accumulation operator.
Hit operator+(const Hit &lhs, const Hit &rhs)
Creates a new point base on this point but adding the energy loss of the right hand side.
std::ostream & operator<<(std::ostream &stream, const Cell &cell)
Stream operator for EMCAL cell.
@ LEDMON
LED monitor channel.
VectorOfTObjectPtrs other