LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
PMTPedestalBase.h
Go to the documentation of this file.
1 
14 #ifndef larana_OPTICALDETECTOR_PMTPEDESTALBASE_H
15 #define larana_OPTICALDETECTOR_PMTPEDESTALBASE_H
16 
17 // STL
18 #include "OpticalRecoTypes.h"
19 #include <string>
20 
21 namespace pmtana {
22 
28 
29  public:
31  PMTPedestalBase(std::string name = "noname");
32 
34  virtual ~PMTPedestalBase();
35 
37  const std::string& Name() const;
38 
40  bool Evaluate(const pmtana::Waveform_t& wf);
41 
43  double Mean(size_t i) const;
44 
46  double Sigma(size_t i) const;
47 
49  const pmtana::PedestalMean_t& Mean() const;
50 
52  const pmtana::PedestalSigma_t& Sigma() const;
53 
54  protected:
60  pmtana::PedestalMean_t& mean_v,
61  pmtana::PedestalSigma_t& sigma_v) = 0;
62 
63  private:
65  std::string _name;
66 
69 
72  };
73 }
74 #endif
75  // end of doxygen group
std::string _name
Name.
std::vector< double > PedestalSigma_t
PMTPedestalBase(std::string name="noname")
Default constructor.
const std::string & Name() const
Name getter.
pmtana::PedestalMean_t _mean_v
A variable holder for pedestal mean value.
virtual ~PMTPedestalBase()
Default destructor.
bool Evaluate(const pmtana::Waveform_t &wf)
Method to compute a pedestal.
virtual bool ComputePedestal(const ::pmtana::Waveform_t &wf, pmtana::PedestalMean_t &mean_v, pmtana::PedestalSigma_t &sigma_v)=0
std::vector< short > Waveform_t
pmtana::PedestalSigma_t _sigma_v
A variable holder for pedestal standard deviation.
const pmtana::PedestalSigma_t & Sigma() const
Getter of the pedestal standard deviation.
std::vector< double > PedestalMean_t
const pmtana::PedestalMean_t & Mean() const
Getter of the pedestal mean value.