source: trunk/MagicSoft/Mars/mjobs/MJExtractCalibTest.h@ 6072

Last change on this file since 6072 was 5941, checked in by mazin, 20 years ago
*** empty log message ***
File size: 2.6 KB
Line 
1#ifndef MARS_MJExtractCalibTest
2#define MARS_MJExtractCalibTest
3
4#ifndef MARS_MJob
5#include "MJob.h"
6#endif
7#ifndef MARS_MCalibrationTestCam
8#include "MCalibrationTestCam.h"
9#endif
10#ifndef MARS_MHCalibrationTestTimeCam
11#include "MHCalibrationTestTimeCam.h"
12#endif
13#ifndef MARS_MPedPhotCam
14#include "MPedPhotCam.h"
15#endif
16#ifndef MARS_MBadPixelsCam
17#include "MBadPixelsCam.h"
18#endif
19
20class MRunIter;
21class MParList;
22class MPedestalCam;
23class MCalibrationRelTimeCam;
24class MCalibrationChargeCam;
25class MCalibrationQECam;
26class MExtractor;
27class MExtractTime;
28class MJExtractCalibTest : public MJob
29{
30private:
31
32 Bool_t fUseCosmicsFilter;
33
34 MRunIter *fRuns; // Data files
35 MExtractor *fExtractor; // Signal extractor
36 MExtractTime *fTimeExtractor; // Arrival time extractor
37
38 MBadPixelsCam fBadPixels;
39 MCalibrationTestCam fTestCam;
40 MHCalibrationTestTimeCam fTestTimeCam;
41 MPedPhotCam fPedPhotCam;
42
43 enum Display_t // Possible Display types
44 {
45 kDataCheckDisplay,
46 kNormalDisplay
47 };
48
49 Display_t fDisplayType; // Chosen Display type
50
51 TString fGeometry;
52
53 Bool_t ReadPedPhotCam();
54
55 void DisplayResult(MParList &plist);
56 void DisplayResultT(MParList &plist);
57
58 Bool_t WriteResult();
59
60 Bool_t ProcessFile(MPedestalCam &pedcam, MCalibrationChargeCam &calcam, MCalibrationQECam &qecam,
61 MCalibrationRelTimeCam &rel, Byte_t filetype);
62
63 Bool_t CheckEnv();
64
65public:
66 MJExtractCalibTest(const char *name=NULL, const char *title=NULL);
67
68 void SetInput(MRunIter *iter) { fRuns = iter; }
69
70 const char* GetOutputFile() const;
71
72 MCalibrationTestCam &GetTestCam() { return fTestCam; }
73 MHCalibrationTestTimeCam &GetTestTimeCam() { return fTestTimeCam; }
74 MPedPhotCam &GetPedPhotCam() { return fPedPhotCam; }
75 const MBadPixelsCam &GetBadPixels() const { return fBadPixels; }
76
77 void SetExtractor(MExtractor* ext) { fExtractor = ext; }
78 void SetTimeExtractor(MExtractTime* ext) { fTimeExtractor = ext; }
79 void SetBadPixels(const MBadPixelsCam &bad) { bad.Copy(fBadPixels); }
80 void SetUseCosmicsFilter( const Bool_t b ) { fUseCosmicsFilter = b; }
81
82 // Displays
83 void SetDataCheckDisplay() { fDisplayType = kDataCheckDisplay; }
84 void SetNormalDisplay() { fDisplayType = kNormalDisplay; }
85
86 Bool_t Process(MPedestalCam &pedcam, MCalibrationChargeCam &calcam, MCalibrationQECam &qecam,
87 MCalibrationRelTimeCam &relcam,Byte_t filetype=1);
88
89 ClassDef(MJExtractCalibTest, 0) // Tool to extract, calibrate and test the signal
90};
91
92#endif
Note: See TracBrowser for help on using the repository browser.