7 #ifndef PULSERECOMANAGER_CXX 8 #define PULSERECOMANAGER_CXX 52 bool ped_status =
true;
58 bool pulse_reco_status = ped_status;
62 auto& pulse_algo = algo_pair.first;
63 auto& ped_algo = algo_pair.second;
67 ped_status = ped_status && ped_algo->Evaluate(wf);
69 pulse_reco_status = ( ped_status &&
71 pulse_algo->Reconstruct( wf, ped_algo->Mean(), ped_algo->Sigma() )
78 ss <<
"No pedestal algorithm available for pulse algo " << pulse_algo->Name();
82 pulse_reco_status = ( pulse_reco_status &&
88 return pulse_reco_status;
Class def header for exception classes in OpticalDetector package.
double Mean(size_t i) const
Getter of the pedestal mean value.
void AddRecoAlgo(pmtana::PMTPulseRecoBase *algo, PMTPedestalBase *ped_algo=nullptr)
A method to set pulse reconstruction algorithm.
bool Evaluate(const pmtana::Waveform_t &wf)
Method to compute a pedestal.
~PulseRecoManager()
Default constructor.
double Sigma(size_t i) const
Getter of the pedestal standard deviation.
bool Reconstruct(const pmtana::Waveform_t &) const
Implementation of ana_base::analyze method.
std::vector< short > Waveform_t
PMTPedestalBase * _ped_algo
ped_estimator object
void SetDefaultPedAlgo(pmtana::PMTPedestalBase *algo)
A method to set a choice of pedestal estimation method.
PulseRecoManager()
Default constructor.
std::vector< std::pair< pmtana::PMTPulseRecoBase *, pmtana::PMTPedestalBase * > > _reco_algo_v
pulse reconstruction algorithm pointer
Class definition file of PulseRecoManager.