LArSoft  v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
AlgoSiPM.h
Go to the documentation of this file.
1 //=============================================================================
2 // AlgoSiPM.h
3 // This is a hit finding algorithm that makes an optical hit out of
4 // everything above threshold, but uses only the first peak to assign hit time
5 //
6 // Gleb Sinev, Duke, 2015
7 // Based on AlgoTreshold.h
8 //=============================================================================
9 
10 #ifndef ALGOSIPM_H
11 #define ALGOSIPM_H
12 
13 #include "fhiclcpp/ParameterSet.h"
14 
15 #include "PMTPulseRecoBase.h"
16 
17 #include <vector>
18 
19 namespace pmtana {
20 
21  class AlgoSiPM : public PMTPulseRecoBase {
22 
23  public:
24 
25  // Default constructor
26  AlgoSiPM(const fhicl::ParameterSet &pset,const std::string name="AlgoSiPM");
27 
28  // Default destructor
29  ~AlgoSiPM();
30 
31  // Implementation of PMTPulseRecoBase::Reset() method
32  void Reset();
33 
34  // A method to set user-defined ADC threshold value
35  // void SetADCThreshold(double v) {_adc_thres = v;};
36 
37  // A method to set a multiplication factor to the pedestal standard deviation
38  // which is used as one of two input values to define a threshold
39  // void SetNSigma(double v) {_nsigma = v;};
40 
41  protected:
42 
43  bool RecoPulse( const pmtana::Waveform_t&,
45  const pmtana::PedestalSigma_t& );
46 
47  // A variable holder for a user-defined absolute ADC threshold value
48  double _adc_thres;
49 
50  // Minimum width for a hit to be recorded
52 
53  // Start recording hit information after this threshold is reached
54  double _2nd_thres;
55 
56  // Use this pedestal instead of the one given by the pedestal algorithm
57  double _pedestal;
58 
59  // A variable holder for a multiplicative factor for the pedestal
60  // standard deviation to define the threshold
61  // double _nsigma;
62 
63  };
64 
65 }
66 
67 #endif
double _adc_thres
Definition: AlgoSiPM.h:48
std::vector< double > PedestalSigma_t
double _2nd_thres
Definition: AlgoSiPM.h:54
bool RecoPulse(const pmtana::Waveform_t &, const pmtana::PedestalMean_t &, const pmtana::PedestalSigma_t &)
Definition: AlgoSiPM.cxx:41
std::vector< short > Waveform_t
AlgoSiPM(const fhicl::ParameterSet &pset, const std::string name="AlgoSiPM")
Definition: AlgoSiPM.cxx:13
Class definition file of PMTPulseRecoBase.
void Reset()
A method to be called event-wise to reset parameters.
Definition: AlgoSiPM.cxx:33
std::vector< double > PedestalMean_t
double _pedestal
Definition: AlgoSiPM.h:57