source: trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.h@ 3554

Last change on this file since 3554 was 3554, checked in by gaug, 21 years ago
*** empty log message ***
File size: 2.8 KB
Line 
1#ifndef MARS_MCalibrationChargeCalc
2#define MARS_MCalibrationChargeCalc
3
4/////////////////////////////////////////////////////////////////////////////
5// //
6// MCalibrationChargeCalc //
7// //
8// Integrates the time slices of the all pixels of a calibration event //
9// and substract the pedestal value //
10// //
11/////////////////////////////////////////////////////////////////////////////
12
13#ifndef MARS_MTask
14#include "MTask.h"
15#endif
16
17class MRawEvtData;
18class MRawRunHeader;
19class MPedestalCam;
20class MCalibrationChargePINDiode;
21class MCalibrationChargeBlindPix;
22class MCalibrationChargeCam;
23class MCalibrationQECam;
24class MGeomCam;
25class MExtractedSignalCam;
26class MBadPixelsCam;
27class MTime;
28class MCalibrationChargeCalc : public MTask
29{
30private:
31
32 MPedestalCam *fPedestals; //! Pedestals of all pixels in the camera
33 MCalibrationChargeCam *fCam; // Calibration events of all pixels in the camera
34 MCalibrationQECam *fQECam; // Derived Quantum efficiency of all pixels in the camera
35 MRawEvtData *fRawEvt; //! raw event data (time slices)
36 MRawRunHeader *fRunHeader; //! RunHeader information
37 MGeomCam *fGeom; //! Geometry information
38 MBadPixelsCam *fBadPixels; //! Bad Pixels information
39
40 MTime *fEvtTime; //! Time of the event
41
42 MExtractedSignalCam *fSignals; // Extracted signal of all pixels in the camera
43 MCalibrationChargePINDiode *fPINDiode; // Calibration results of the PIN Diode
44 MCalibrationChargeBlindPix *fBlindPixel; // Calibration results of the Blind Pixel
45
46 Float_t fNumHiGainSamples;
47 Float_t fNumLoGainSamples;
48 Float_t fSqrtHiGainSamples;
49 Float_t fSqrtLoGainSamples;
50
51 Float_t fConversionHiLo;
52 Int_t fFlags; // Flag for the fits used
53
54 enum { kUseQualityChecks,
55 kHiLoGainCalibration };
56
57 Int_t PreProcess(MParList *pList);
58 Bool_t ReInit(MParList *pList);
59 Int_t Process();
60 Int_t PostProcess();
61
62public:
63
64 MCalibrationChargeCalc(const char *name=NULL, const char *title=NULL);
65
66 void Clear(const Option_t *o="");
67
68 void SkipQualityChecks(Bool_t b=kTRUE)
69 {b ? CLRBIT(fFlags, kUseQualityChecks) : SETBIT(fFlags, kUseQualityChecks);}
70 void SkipHiLoGainCalibration(Bool_t b=kTRUE)
71 {b ? CLRBIT(fFlags, kHiLoGainCalibration) : SETBIT(fFlags, kHiLoGainCalibration);}
72
73 ClassDef(MCalibrationChargeCalc, 1) // Task to fill the Calibration Containers from raw data
74};
75
76#endif
Note: See TracBrowser for help on using the repository browser.