CMS 3D CMS Logo

TMatacq.h
Go to the documentation of this file.
1 #ifndef TMatacq_H
2 #define TMatacq_H
3 
4 #include "TObject.h"
5 
6 #define NMAXSAMP 100
7 #define NSPARAB 16
8 
9 class TMatacq : public TObject {
10 private:
11  int fNsamples;
14 
16  int bing[101];
17  double nsigcut;
18  double level1, level2, level3;
19  double bong[NMAXSAMP];
20  double t[NSPARAB], val[NSPARAB];
22  double bl, sigbl, val_max;
23  double ampl, timeatmax;
24  double pkval, sigpkval;
25  double trise;
28 
30  int status[1200];
31  double comp_trise[1200], comp_peak[1200];
32  double slidingmean;
33  int nslide;
34 
35  double interpolate(double);
36 
37 public:
38  // Default Constructor, mainly for Root
39  TMatacq(int, int, int, int, int, int, int, int, int, int, int);
40 
41  // Destructor: Does nothing
42  ~TMatacq() override;
43 
44  // Initialize
45  void init();
46 
47  int rawPulseAnalysis(Int_t, Double_t*); // GHM
48  int findPeak();
49  int doFit();
50  int compute_trise();
51 
52  void enterdata(Int_t);
53  int countBadPulses(Int_t);
54  void printmatacqData(Int_t, Int_t, Int_t);
55  void printitermatacqData(Int_t, Int_t, Int_t);
56 
57  int getPt1() { return firstsample; }
58  int getPt2() { return lastsample; }
59  int getPtm() { return samplemax; }
60 
61  double getBaseLine() { return bl; }
62  double getsigBaseLine() { return sigbl; }
63 
64  double getTimpeak() { return pkval; }
65  double getsigTimpeak() { return sigpkval; }
66 
67  double getAmpl() { return ampl; }
68  double getTimax() { return timeatmax; }
69 
70  double getTrise() { return trise; }
71  double getFwhm() { return width50; }
72  double getWidth20() { return width20; }
73  double getWidth80() { return width80; }
74  double getSlide() { return slidingmean; }
75 
76  ClassDefOverride(TMatacq, 0)
77 };
78 
79 #endif
TMatacq::bong
double bong[100]
Definition: TMatacq.h:19
TMatacq::getPt2
int getPt2()
Definition: TMatacq.h:58
TMatacq::sigtrise
double sigtrise
Definition: TMatacq.h:27
TMatacq::comp_trise
double comp_trise[1200]
Definition: TMatacq.h:31
TMatacq::bl
double bl
Definition: TMatacq.h:22
TMatacq::val_max
double val_max
Definition: TMatacq.h:22
TMatacq::slidingmean
double slidingmean
Definition: TMatacq.h:32
TMatacq::level1
double level1
Definition: TMatacq.h:18
TMatacq::fv3
double fv3[16]
Definition: TMatacq.h:21
TMatacq
Definition: TMatacq.h:9
TMatacq::TMatacq
TMatacq(int, int, int, int, int, int, int, int, int, int, int)
Definition: TMatacq.cc:31
TMatacq::compute_trise
int compute_trise()
Definition: TMatacq.cc:353
TMatacq::t
double t[16]
Definition: TMatacq.h:20
TMatacq::countBadPulses
int countBadPulses(Int_t)
Definition: TMatacq.cc:490
TMatacq::fv1
double fv1[16]
Definition: TMatacq.h:21
TMatacq::width20
double width20
Definition: TMatacq.h:26
TMatacq::doFit
int doFit()
Definition: TMatacq.cc:219
TMatacq::getsigBaseLine
double getsigBaseLine()
Definition: TMatacq.h:62
NMAXSAMP
#define NMAXSAMP
Definition: TMatacq.h:6
TMatacq::getPtm
int getPtm()
Definition: TMatacq.h:59
TMatacq::val
double val[16]
Definition: TMatacq.h:20
TMatacq::getTimpeak
double getTimpeak()
Definition: TMatacq.h:64
TMatacq::level2
double level2
Definition: TMatacq.h:18
TMatacq::rawPulseAnalysis
int rawPulseAnalysis(Int_t, Double_t *)
Definition: TMatacq.cc:57
TMatacq::printmatacqData
void printmatacqData(Int_t, Int_t, Int_t)
Definition: TMatacq.cc:431
TMatacq::getsigTimpeak
double getsigTimpeak()
Definition: TMatacq.h:65
TMatacq::nevlasers
int nevlasers
Definition: TMatacq.h:29
TMatacq::pkval
double pkval
Definition: TMatacq.h:24
TMatacq::firstsample
int firstsample
Definition: TMatacq.h:15
TMatacq::presample
int presample
Definition: TMatacq.h:15
TMatacq::status
int status[1200]
Definition: TMatacq.h:30
TMatacq::getTimax
double getTimax()
Definition: TMatacq.h:68
TMatacq::bing
int bing[101]
Definition: TMatacq.h:16
TMatacq::enterdata
void enterdata(Int_t)
Definition: TMatacq.cc:403
TMatacq::nevmtq1
int nevmtq1
Definition: TMatacq.h:29
TMatacq::getAmpl
double getAmpl()
Definition: TMatacq.h:67
TMatacq::sigpkval
double sigpkval
Definition: TMatacq.h:24
TMatacq::meantrise
double meantrise
Definition: TMatacq.h:27
TMatacq::getWidth80
double getWidth80()
Definition: TMatacq.h:73
TMatacq::~TMatacq
~TMatacq() override
Definition: TMatacq.cc:55
TMatacq::samplemax
int samplemax
Definition: TMatacq.h:15
TMatacq::getWidth20
double getWidth20()
Definition: TMatacq.h:72
TMatacq::level3
double level3
Definition: TMatacq.h:18
TMatacq::ampl
double ampl
Definition: TMatacq.h:23
TMatacq::printitermatacqData
void printitermatacqData(Int_t, Int_t, Int_t)
Definition: TMatacq.cc:517
TMatacq::lastsample
int lastsample
Definition: TMatacq.h:15
TMatacq::getSlide
double getSlide()
Definition: TMatacq.h:74
TMatacq::nsigcut
double nsigcut
Definition: TMatacq.h:17
TMatacq::comp_peak
double comp_peak[1200]
Definition: TMatacq.h:31
NSPARAB
#define NSPARAB
Definition: TMatacq.h:7
TMatacq::findPeak
int findPeak()
Definition: TMatacq.cc:136
TMatacq::getFwhm
double getFwhm()
Definition: TMatacq.h:71
TMatacq::fNsamples
int fNsamples
Definition: TMatacq.h:11
TMatacq::width80
double width80
Definition: TMatacq.h:26
TMatacq::getPt1
int getPt1()
Definition: TMatacq.h:57
TMatacq::getBaseLine
double getBaseLine()
Definition: TMatacq.h:61
TMatacq::fv2
double fv2[16]
Definition: TMatacq.h:21
TMatacq::fNum_samp_aft_max
int fNum_samp_aft_max
Definition: TMatacq.h:13
TMatacq::nslide
int nslide
Definition: TMatacq.h:33
TMatacq::getTrise
double getTrise()
Definition: TMatacq.h:70
TMatacq::interpolate
double interpolate(double)
Definition: TMatacq.cc:372
TMatacq::trise
double trise
Definition: TMatacq.h:25
TMatacq::fNum_samp_bef_max
int fNum_samp_bef_max
Definition: TMatacq.h:12
TMatacq::nevmtq0
int nevmtq0
Definition: TMatacq.h:29
TMatacq::init
void init()
Definition: TMatacq.cc:17
TMatacq::sigbl
double sigbl
Definition: TMatacq.h:22
TMatacq::width50
double width50
Definition: TMatacq.h:26
TMatacq::endsample
int endsample
Definition: TMatacq.h:15
TMatacq::timeatmax
double timeatmax
Definition: TMatacq.h:23