Go to the documentation of this file.00001 #ifndef TMatacq_H
00002 #define TMatacq_H
00003
00004 #include "TObject.h"
00005
00006 #define NMAXSAMP 100
00007 #define NSPARAB 16
00008
00009 class TMatacq: public TObject
00010 {
00011
00012 private:
00013
00014 int fNsamples;
00015 int fNum_samp_bef_max;
00016 int fNum_samp_aft_max;
00017
00018 int firstsample,lastsample,samplemax,presample,endsample;
00019 int bing[101];
00020 double nsigcut;
00021 double level1,level2,level3;
00022 double bong[NMAXSAMP];
00023 double t[NSPARAB],val[NSPARAB];
00024 double fv1[NSPARAB],fv2[NSPARAB],fv3[NSPARAB];
00025 double bl,sigbl,val_max;
00026 double ampl,timeatmax;
00027 double pkval,sigpkval;
00028 double trise;
00029 double width20, width50, width80;
00030 double meantrise,sigtrise;
00031
00032 int nevmtq0,nevmtq1,nevlasers;
00033 int status[1200];
00034 double comp_trise[1200],comp_peak[1200];
00035 double slidingmean;
00036 int nslide;
00037
00038 double interpolate(double);
00039
00040 public:
00041
00042 TMatacq(int,int,int,int,int,int,int,int,int,int,int);
00043
00044
00045 virtual ~TMatacq();
00046
00047
00048 void init();
00049
00050 int rawPulseAnalysis(Int_t, Double_t*);
00051 int findPeak();
00052 int doFit();
00053 int compute_trise();
00054
00055 void enterdata(Int_t);
00056 int countBadPulses(Int_t);
00057 void printmatacqData(Int_t,Int_t,Int_t);
00058 void printitermatacqData(Int_t,Int_t,Int_t);
00059
00060 int getPt1() {return firstsample;}
00061 int getPt2() {return lastsample;}
00062 int getPtm() {return samplemax;}
00063
00064 double getBaseLine() {return bl;}
00065 double getsigBaseLine() {return sigbl;}
00066
00067 double getTimpeak() {return pkval;}
00068 double getsigTimpeak() {return sigpkval;}
00069
00070 double getAmpl() {return ampl;}
00071 double getTimax() {return timeatmax;}
00072
00073 double getTrise() {return trise;}
00074 double getFwhm() {return width50;}
00075 double getWidth20() {return width20;}
00076 double getWidth80() {return width80;}
00077 double getSlide() {return slidingmean;}
00078
00079
00080 };
00081
00082 #endif
00083
00084
00085