LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
AlgoCFD.h
Go to the documentation of this file.
1 
15 #ifndef ALGOCFD_H
16 #define ALGOCFD_H
17 
18 #include "PMTPulseRecoBase.h"
19 
20 namespace fhicl {
21  class ParameterSet;
22 }
23 
25 
26 #include <map>
27 #include <string>
28 #include <vector>
29 
30 namespace pmtana {
31 
36  class AlgoCFD : public PMTPulseRecoBase {
37 
38  public:
40  AlgoCFD(const std::string name = "CFD");
41 
43  AlgoCFD(const fhicl::ParameterSet& pset,
44  std::unique_ptr<pmtana::RiseTimeCalculatorBase> risetimecalculator = nullptr,
45  const std::string name = "CFD");
46  //AlgoCFD(const ::fcllite::PSet &pset,const std::string name="CFD");
47 
49  void Reset();
50 
51  protected:
53  bool RecoPulse(const pmtana::Waveform_t&,
56 
57  const std::map<unsigned, double> LinearZeroPointX(const std::vector<double>& trace);
58 
59  private:
60  float _F;
61  int _D;
62 
63  //int _number_presample;
64  double _peak_thresh;
65  double _start_thresh;
66  double _end_thresh;
67  };
68 
69 }
70 #endif
71  // end of doxygen group
std::vector< double > PedestalSigma_t
double _end_thresh
Definition: AlgoCFD.h:66
M::value_type trace(const M &m)
double _start_thresh
Definition: AlgoCFD.h:65
ntupleExperimental Reset()
parameter set interface
std::vector< short > Waveform_t
double _peak_thresh
Definition: AlgoCFD.h:64
Class definition file of PMTPulseRecoBase.
std::vector< double > PedestalMean_t