source: branches/removing_cpp11_features/melectronics/MAnalogSignal.h@ 19948

Last change on this file since 19948 was 17682, checked in by ftemme, 11 years ago
Added the clipping of the trigger signal
File size: 1.1 KB
Line 
1#ifndef MARS_MAnalogSignal
2#define MARS_MAnalogSignal
3
4#ifndef MARS_MArrayF
5#include "MArrayF.h"
6#endif
7
8class TF1;
9class MSpline3;
10
11class MAnalogSignal : public MArrayF/*TObject*/
12{
13private:
14 MArrayF fDer1; //! Buffer for the derivatives of the corresponding spline
15 MArrayF fDer2; //! Buffer for the derivatives of the corresponding spline
16
17public:
18 MAnalogSignal(UInt_t n) { Set(n); }
19
20 void Set(UInt_t n);
21 Bool_t AddPulse(const MSpline3 &spline, Float_t t, Float_t f=1);
22 Bool_t AddPulse(const TF1 &f1, Float_t t, Float_t f=1);
23 void AddSignal(const MAnalogSignal &s, Int_t delay=0,Float_t dampingFact=1.0);
24
25 // Deprecated. Use MSimRandomPhotons instead
26 void AddRandomPulses(const MSpline3 &spline, Float_t num);
27
28 void AddGaussianNoise(Float_t amplitude=1, Float_t offset=0);
29
30 TObjArray *Discriminate(Float_t threshold, Double_t start, Double_t end, Float_t len=-1) const;
31 TObjArray *Discriminate(Float_t threshold, Float_t len=-1) const { return Discriminate(threshold, 0, fN-1, len); }
32
33 ClassDef(MAnalogSignal, 1) // Storage class for an analog signal
34};
35
36#endif
Note: See TracBrowser for help on using the repository browser.