1 | #ifndef MARS_MCalibrationBlindPix
|
---|
2 | #define MARS_MCalibrationBlindPix
|
---|
3 |
|
---|
4 | #ifndef MARS_MHCalibrationBlindPixel
|
---|
5 | #include "MHCalibrationBlindPixel.h"
|
---|
6 | #endif
|
---|
7 |
|
---|
8 | #ifndef MARS_MH
|
---|
9 | #include "MH.h"
|
---|
10 | #endif
|
---|
11 |
|
---|
12 | class TH1I;
|
---|
13 | class MCalibrationBlindPix : public MParContainer
|
---|
14 | {
|
---|
15 | private:
|
---|
16 |
|
---|
17 | MHCalibrationBlindPixel *fHist; // Pointer to the histograms performing the fits, etc.
|
---|
18 |
|
---|
19 | Float_t fLambda; // The mean charge after the fit
|
---|
20 | Float_t fMu0; // The position of the pedestal-peak
|
---|
21 | Float_t fMu1; // The position of the first phe-peak
|
---|
22 | Float_t fSigma0; // The width of the pedestal-peak
|
---|
23 | Float_t fSigma1; // The width of the first phe-peak
|
---|
24 |
|
---|
25 | Float_t fErrLambda; // The error of the mean charge after the fit
|
---|
26 | Float_t fErrMu0; // The error of the position of the pedestal-peak
|
---|
27 | Float_t fErrMu1; // The error of the position of the first phe-peak
|
---|
28 | Float_t fErrSigma0; // The error of the width of the pedestal-peak
|
---|
29 | Float_t fErrSigma1; // The error of the width of the first phe-peak
|
---|
30 |
|
---|
31 | Float_t fTime; // The mean arrival time after the fit
|
---|
32 | Float_t fErrTime; // The error of the mean arrival time after the fit
|
---|
33 |
|
---|
34 | TH1I* fHSinglePheFADCSlices;
|
---|
35 |
|
---|
36 |
|
---|
37 | public:
|
---|
38 |
|
---|
39 | MCalibrationBlindPix(const char *name=NULL, const char *title=NULL);
|
---|
40 | ~MCalibrationBlindPix();
|
---|
41 |
|
---|
42 | void Clear(Option_t *o="");
|
---|
43 |
|
---|
44 | // Getters
|
---|
45 | Float_t GetLambda() const { return fLambda; }
|
---|
46 | Float_t GetMu0() const { return fMu0; }
|
---|
47 | Float_t GetMu1() const { return fMu1; }
|
---|
48 | Float_t GetSigma0() const { return fSigma0; }
|
---|
49 | Float_t GetSigma1() const { return fSigma1; }
|
---|
50 |
|
---|
51 | Float_t GetErrLambda() const { return fErrLambda; }
|
---|
52 | Float_t GetErrMu0() const { return fErrMu0; }
|
---|
53 | Float_t GetErrMu1() const { return fErrMu1; }
|
---|
54 | Float_t GetErrSigma0() const { return fErrSigma0; }
|
---|
55 | Float_t GetErrSigma1() const { return fErrSigma1; }
|
---|
56 |
|
---|
57 | Float_t GetTime() const { return fTime; }
|
---|
58 | Float_t GetErrTime() const { return fErrTime; }
|
---|
59 |
|
---|
60 | TH1I *GetSinglePheFADCSlices() { return fHSinglePheFADCSlices; }
|
---|
61 |
|
---|
62 | MHCalibrationBlindPixel *GetHist() const { return fHist; }
|
---|
63 | MHCalibrationBlindPixel *GetHist() { return fHist; }
|
---|
64 |
|
---|
65 | Bool_t IsFitOK() const;
|
---|
66 |
|
---|
67 | // Fill histos
|
---|
68 | Bool_t FillCharge(const Float_t q);
|
---|
69 | Bool_t FillTime(const Float_t t);
|
---|
70 | Bool_t FillGraphs(Float_t qhi,Float_t qlo) const { return fHist->FillGraphs(qhi,qlo); }
|
---|
71 |
|
---|
72 | // Fits
|
---|
73 | Bool_t FitCharge();
|
---|
74 | Bool_t FitTime();
|
---|
75 | void ChangeFitFunc(MHCalibrationBlindPixel::FitFunc_t f) const { fHist->ChangeFitFunc(f); }
|
---|
76 |
|
---|
77 | // Draws
|
---|
78 | void Draw(Option_t *opt="") { fHist->Draw(opt); }
|
---|
79 | TObject *DrawClone(Option_t *opt="") const { return fHist->DrawClone(opt); }
|
---|
80 |
|
---|
81 | Bool_t CheckOscillations();
|
---|
82 |
|
---|
83 | ClassDef(MCalibrationBlindPix, 1) // Container for Calibration Blind Pixel
|
---|
84 | };
|
---|
85 |
|
---|
86 | #endif
|
---|
87 |
|
---|