All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AlgoThreshold.h
Go to the documentation of this file.
1 /**
2  * \file AlgoThreshold.h
3  *
4  * \ingroup PulseReco
5  *
6  * \brief Class definition file of AlgoThreshold
7  *
8  * @author Kazu - Nevis 2013
9  */
10 
11 /** \addtogroup PulseReco
12 
13 @{*/
14 
15 #ifndef ALGOTHRESHOLD_H
16 #define ALGOTHRESHOLD_H
17 
18 #include "PMTPulseRecoBase.h"
19 namespace fhicl { class ParameterSet; }
21 
22 #include <string>
23 
24 namespace pmtana
25 {
26 
27  /**
28  \class AlgoThreshold
29  This class implements threshold algorithm to AlgoThreshold class.
30  The algorithm defines a pulse in user-specified time window.
31  A typical usage is to set the beginning of the window to be 0 (= start of the waveform)
32  and integrate over the time of interest. By default, the ending is set to index=0, in
33  which case it uses the ending index of the input waveform (i.e. full integration).
34  */
36 
37  public:
38 
39  /// Default constructor
40  AlgoThreshold(const std::string name="AlgoThreshold");
41 
42  /// Alternative constructor
43  AlgoThreshold(const fhicl::ParameterSet &pset,
44  std::unique_ptr<pmtana::RiseTimeCalculatorBase> risetimecalculator=nullptr,
45  const std::string name="AlgoThreshold");
46  //AlgoThreshold(const ::fcllite::PSet &pset,const std::string name="AlgoThreshold");
47 
48  /// Implementation of AlgoThreshold::reset() method
49  void Reset();
50 
51  protected:
52 
53  /// Implementation of AlgoThreshold::reco() method
54  bool RecoPulse(const pmtana::Waveform_t& wf,
55  const pmtana::PedestalMean_t& mean_v,
56  const pmtana::PedestalSigma_t& sigma_v);
57 
58  /// A variable holder for a user-defined absolute ADC threshold value
59  //double _adc_thres;
62 
63  /// A variable holder for a multiplicative factor for the pedestal standard deviation to define the threshold.
64  //double _nsigma;
65  double _nsigma_start;
66  double _nsigma_end;
67 
68 
69  };
70 
71 }
72 #endif
73 
74 /** @} */ // end of doxygen group
std::vector< double > PedestalSigma_t
AlgoThreshold(const std::string name="AlgoThreshold")
Default constructor.
void Reset()
Implementation of AlgoThreshold::reset() method.
std::vector< short > Waveform_t
bool RecoPulse(const pmtana::Waveform_t &wf, const pmtana::PedestalMean_t &mean_v, const pmtana::PedestalSigma_t &sigma_v)
Implementation of AlgoThreshold::reco() method.
double _nsigma_start
A variable holder for a multiplicative factor for the pedestal standard deviation to define the thres...
Definition: AlgoThreshold.h:65
then echo fcl name
Class definition file of PMTPulseRecoBase.
std::vector< double > PedestalMean_t
double _start_adc_thres
A variable holder for a user-defined absolute ADC threshold value.
Definition: AlgoThreshold.h:60