MarlinTPC  1.2.0
ALTROADCPulse.h
1 
2 #ifndef ALTROADCPULSE_H_
3 #define ALTROADCPULSE_H_
4 #include "ADCPulse.h"
5 #include "TF1.h"
6 
7 namespace marlintpc
8 {
9 
30 class ALTROADCPulse: public ADCPulse
31 {
32 
33  public:
44 
45  ALTROADCPulse(double frequencyMHz, double peakingTime, double nElectronsDynamicRange, int ADCMaxValue,
46  int threshold);
47 
48  void add(double startTime, int nElectrons);
49 
51 
52  protected:
53  double _gamma4(double x, double ADCChargeValue, double startTime);
54  double _g4Par1;
55  double _g4expPar1;
56  double _peakingTime;
57 };
58 
59 }
60 
61 
62 #endif /* ALTROADCPULSE_H_ */
double _peakingTime
Peaking time ALTRO electronics in ns(time from start of pulse to maximum)
Definition: ALTROADCPulse.h:56
Implementation of the ALTRO electronics shaping and ADC.
Definition: ALTROADCPulse.h:30
ALTROADCPulse(double frequencyMHz, double peakingTime, double nElectronsDynamicRange, int ADCMaxValue, int threshold)
The constructor.
Definition: ALTROADCPulse.cc:18
void add(double startTime, int nElectrons)
Add signal from charge (nElectrons) arriving.
Definition: ALTROADCPulse.cc:41
double _gamma4(double x, double ADCChargeValue, double startTime)
gamma4 shaping function
Definition: ALTROADCPulse.cc:32
double _g4expPar1
helper variable to avoid recalculation: exp(shaping function order)
Definition: ALTROADCPulse.h:55
double _g4Par1
shaping function order
Definition: ALTROADCPulse.h:54
A base class interface which holds the raw data of the pulse and represents the ADC and its shaping a...
Definition: ADCPulse.h:16