source: trunk/MagicSoft/Mars/mcalib/MCalibrationRelTimeCalc.h@ 4884

Last change on this file since 4884 was 4882, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 2.4 KB
Line 
1#ifndef MARS_MCalibrationRelTimeCalc
2#define MARS_MCalibrationRelTimeCalc
3
4/////////////////////////////////////////////////////////////////////////////
5//
6// MCalibrationRelTimeCalc
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
17#ifndef MARS_MBadPixelsPix
18#include "MBadPixelsPix.h"
19#endif
20
21class MCalibrationRelTimeCam;
22class MGeomCam;
23class MBadPixelsCam;
24
25class MCalibrationRelTimeCalc : public MTask
26{
27private:
28
29 static const Float_t fgRelTimeResolutionLimit; //! Default for fRelTimeResolutionLimit (now set to: 0.75)
30
31 // Variables
32 Float_t fRelTimeResolutionLimit; // Limit acceptance rel. time resolution (in FADC slices)
33 Byte_t fFlags; // Bit-field for the flags
34
35 TString fOutputPath; // Path to the output file
36 TString fOutputFile; // Name of the output file
37
38 // Pointers
39 MBadPixelsCam *fBadPixels; // Bad Pixels
40 MCalibrationRelTimeCam *fCam; // Calibrated RelTimes of all pixels
41 MGeomCam *fGeom; //! Camera geometry
42
43 // enums
44 enum { kHiLoGainCalibration };
45
46 // functions
47 const char* GetOutputFile();
48 void FinalizeAverageResolution();
49 void FinalizeRelTimes ();
50 void FinalizeBadPixels ();
51 void FinalizeUnsuitablePixels();
52
53 void PrintUncalibrated( MBadPixelsPix::UncalibratedType_t typ, const char *text) const;
54
55 Int_t PreProcess (MParList *pList);
56 Bool_t ReInit (MParList *pList);
57 Int_t Process ();
58 Int_t PostProcess();
59
60public:
61
62 MCalibrationRelTimeCalc(const char *name=NULL, const char *title=NULL);
63
64 void Clear(const Option_t *o="");
65
66 void SetOutputPath ( TString path="." );
67 void SetOutputFile ( TString file="TimeCalibStat.txt" ) { fOutputFile = file; }
68 void SetRelTimeResolutionLimit ( const Float_t f=fgRelTimeResolutionLimit ) { fRelTimeResolutionLimit = f; }
69
70 void SkipHiLoGainCalibration ( const Bool_t b=kTRUE )
71 { b ? CLRBIT(fFlags, kHiLoGainCalibration) : SETBIT(fFlags, kHiLoGainCalibration); }
72
73 ClassDef(MCalibrationRelTimeCalc, 1) // Task finalizing the relative time Calibration
74};
75
76#endif
Note: See TracBrowser for help on using the repository browser.