source: trunk/MagicSoft/Mars/mcalib/MHCalibrationChargeCam.h@ 4793

Last change on this file since 4793 was 4793, checked in by gaug, 20 years ago
*** empty log message ***
File size: 2.9 KB
Line 
1#ifndef MARS_MHCalibrationChargeCam
2#define MARS_MHCalibrationChargeCam
3
4#ifndef MARS_MHCalibrationCam
5#include "MHCalibrationCam.h"
6#endif
7
8#ifndef ROOT_TArrayF
9#include "TArrayF.h"
10#endif
11
12class TH2D;
13class MRawEvtData;
14class MExtractedSignalCam;
15class MCalibrationChargePix;
16class MHCalibrationChargePix;
17class MHCalibrationChargeCam : public MHCalibrationCam
18{
19private:
20
21 static const Int_t fgAverageNbinsHiGain; //! The default for fAverageNbins HiGain (now set to: 3300)
22 static const Int_t fgAverageNbinsLoGain; //! The default for fAverageNbins LoGain (now set to: 1950)
23
24 static const Float_t fgNumHiGainSaturationLimit; //! The default for fNumHiGainSaturationLimit (now at: 0.01)
25 static const Float_t fgNumLoGainSaturationLimit; //! The default for fNumLoGainSaturationLimit (now at: 0.005)
26 static const Float_t fgTimeLowerLimit; //! Default for fTimeLowerLimit (now set to: 1.)
27 static const Float_t fgTimeUpperLimit; //! Default for fTimeUpperLimit (now set to: 2.)
28
29 static const Float_t gkHiGainInnerRefLines[7];
30 static const Float_t gkHiGainOuterRefLines[7];
31 static const Float_t gkLoGainInnerRefLines[7];
32 static const Float_t gkLoGainOuterRefLines[7];
33
34 Float_t fTimeLowerLimit; // Limit dist. to first signal slice (in units of FADC slices)
35 Float_t fTimeUpperLimit; // Limit dist. to last signal slice (in units of FADC slices)
36 Byte_t fFirstHiGain; // First used slice High Gain
37 Byte_t fLastHiGain; // Last used slice High Gain
38 Byte_t fFirstLoGain; // First used slice Low Gain
39 Byte_t fLastLoGain; // Last used slice Low Gain
40
41 MRawEvtData *fRawEvt; //! Raw event data
42
43 Bool_t SetupHists(const MParList *pList);
44 Bool_t ReInitHists(MParList *pList);
45 Bool_t FillHists(const MParContainer *par, const Stat_t w=1);
46
47 void FinalizeAbsTimes (MHCalibrationChargePix &hist, MCalibrationChargePix &pix, MBadPixelsPix &bad,
48 Byte_t first, Byte_t last);
49 Bool_t FinalizeHists();
50 void FinalizeBadPixels();
51
52 void DrawDataCheckPixel(MHCalibrationChargePix &pix, const Float_t refline[]);
53 void DisplayRefLines(const TH2D *hist, const Float_t refline[]) const;
54
55public:
56
57 MHCalibrationChargeCam(const char *name=NULL, const char *title=NULL);
58 ~MHCalibrationChargeCam() {}
59
60 TObject *Clone(const char *name="") const;
61
62 void SetTimeLowerLimit ( const Float_t f=fgTimeLowerLimit ) { fTimeLowerLimit = f; }
63 void SetTimeUpperLimit ( const Float_t f=fgTimeUpperLimit ) { fTimeUpperLimit = f; }
64
65 Bool_t GetPixelContent ( Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type=0) const;
66 void DrawPixelContent( Int_t num ) const;
67
68 // Draw
69 void Draw(const Option_t *opt);
70
71 ClassDef(MHCalibrationChargeCam, 1) // Histogram class for Charge Camera Calibration
72};
73
74#endif
75
76
77
78
79
80
81
82
83
Note: See TracBrowser for help on using the repository browser.