source: trunk/MagicSoft/Mars/mcalib/MCalibrateData.h@ 4200

Last change on this file since 4200 was 3687, checked in by gaug, 21 years ago
*** empty log message ***
File size: 2.7 KB
Line 
1#ifndef MARS_MCalibrateData
2#define MARS_MCalibrateData
3
4/////////////////////////////////////////////////////////////////////////////
5// //
6// MCalibrateData
7// //
8// Integrates the desired ADC time slices of one pixel and apply //
9// calibration constants //
10// //
11// Differences between MCalibrateData and MCalibrate :
12// in MCalibrateData
13// - in ReInit the MPedPhot container is filled using
14// - the pedstals/slice from MPedestalCam
15// - the number of used FADC slices from MExtractedSignalCam
16// - the photon/ADC conversion factor from MCalibrationCam
17// //
18// //
19/////////////////////////////////////////////////////////////////////////////
20#ifndef MARS_MTask
21#include "MTask.h"
22#endif
23
24class MGeomCam;
25class MBadPixelsCam;
26class MPedestalCam;
27class MCalibrationChargeCam;
28class MCalibrationQECam;
29class MExtractedSignalCam;
30
31class MPedPhotCam;
32class MCerPhotEvt;
33
34class MCalibrateData : public MTask
35{
36private:
37 MGeomCam *fCam;
38 MPedestalCam *fPedestal; // Pedestals/slice [ADC counts]
39 MBadPixelsCam *fBadPixels; // Bad Pixels information
40 MCalibrationChargeCam *fCalibrations; // Calibration constants
41 MCalibrationQECam *fQEs; // Quantum efficiencies
42 MExtractedSignalCam *fSignals; // Integrated charge in FADCs counts
43
44 MPedPhotCam *fPedPhot; // Pedestals/(used slices) [photons]
45 MCerPhotEvt *fCerPhotEvt; // Cerenkov Photon Event used for calculation
46
47 Float_t fNumUsedHiGainFADCSlices;
48 Float_t fNumUsedLoGainFADCSlices;
49
50 Float_t fConversionHiLo;
51 UShort_t fCalibrationMode;
52
53 Bool_t GetConversionFactor(UInt_t,
54 Float_t &, Float_t &, Float_t &, Float_t &);
55
56 Int_t PreProcess(MParList *pList);
57 Bool_t ReInit(MParList *pList);
58 Int_t Process();
59
60public:
61
62 enum CalibrationMode_t{kNone=0,kBlindPixel,kFfactor,kPinDiode,kCombined};
63 static const CalibrationMode_t kDefault = kBlindPixel;
64
65 MCalibrateData(CalibrationMode_t calmode = kDefault,const char *name=NULL, const char *title=NULL);
66
67 void SetConversionHiLo(Float_t conv) { fConversionHiLo = conv; };
68 void SetCalibrationMode(CalibrationMode_t calmode=kDefault){ fCalibrationMode=calmode;};
69
70 ClassDef(MCalibrateData, 0) // Task to calculate cerenkov photons using calibration constants
71};
72
73
74#endif
75
76
77
78
79
80
81
82
83
Note: See TracBrowser for help on using the repository browser.