]>
Commit | Line | Data |
---|---|---|
94594e5d | 1 | #ifndef ALIEMCALQACHECKER_H |
2 | #define ALIEMCALQACHECKER_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | ||
7 | /* | |
8 | Checks the quality assurance. | |
9 | By comparing with reference data | |
10 | ||
11 | Based on PHOS code written by | |
12 | Y. Schutz CERN July 2007 | |
9e47432c | 13 | |
14 | Implemented by Yaxian Mao (CERN Oct. 2009) | |
94594e5d | 15 | */ |
16 | ||
17 | ||
18 | // --- ROOT system --- | |
19 | class TFile ; | |
20 | class TH1F ; | |
21 | class TH1I ; | |
9e47432c | 22 | class TH1 ; |
23 | class TLine ; | |
24 | class TPaveText ; | |
25 | class TObjArray; | |
94594e5d | 26 | |
27 | // --- Standard library --- | |
28 | ||
29 | // --- AliRoot header files --- | |
30 | #include "AliQACheckerBase.h" | |
31 | class AliEMCALLoader ; | |
32 | ||
33 | class AliEMCALQAChecker: public AliQACheckerBase { | |
34 | ||
35 | public: | |
9e47432c | 36 | //Histograms for Raw data control |
37 | enum HRawType_t { | |
38 | // first normal Low Gain and High Gain info | |
39 | kNsmodLG,kNsmodHG,kTimeLG,kTimeHG, | |
40 | kSigLG,kSigHG,kNtotLG,kNtotHG,kTowerHG,kTowerLG, | |
41 | kPedLG,kPedHG, | |
42 | kPedRMSLG,kPedRMSHG, | |
43 | // then TRU info | |
44 | kNsmodTRU,kTimeTRU, | |
45 | kSigTRU,kNtotTRU, | |
46 | kPedTRU,kPedRMSTRU, | |
47 | // and also LED Mon info | |
48 | kNsmodLGLEDMon,kNsmodHGLEDMon,kTimeLGLEDMon,kTimeHGLEDMon, | |
49 | kSigLGLEDMon,kSigHGLEDMon,kNtotLGLEDMon,kNtotHGLEDMon, | |
50 | kPedLGLEDMon,kPedHGLEDMon, | |
51 | kPedRMSLGLEDMon,kPedRMSHGLEDMon | |
52 | } ; | |
53 | ||
54 | //Histograms for RecPoints control | |
55 | enum HRPType_t {kRecPE,kRecPM,kRecPDigM}; | |
56 | ||
57 | //Histograms for ESDs control | |
58 | enum HESDType_t {kESDCaloClusE,kESDCaloClusM,kESDCaloCellA,kESDCaloCellM} ; | |
94594e5d | 59 | |
9e47432c | 60 | AliEMCALQAChecker() ; // ctor |
07548920 | 61 | AliEMCALQAChecker(const AliEMCALQAChecker& qac); |
62 | AliEMCALQAChecker& operator = (const AliEMCALQAChecker& qac) ; | |
9e47432c | 63 | virtual ~AliEMCALQAChecker() ; // dtor |
64 | ||
65 | virtual void Init(const AliQAv1::DETECTORINDEX_t det) ; | |
66 | ||
67 | protected: | |
68 | ||
486788fc | 69 | virtual Double_t * Check(AliQAv1::ALITASK_t index, TObjArray ** list, const AliDetectorRecoParam * /*recoParam*/) ; |
9e47432c | 70 | //virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ; |
71 | ||
72 | Double_t * CheckRaws(TObjArray ** list); | |
73 | Double_t * CheckRecPoints(TObjArray** /*list*/){return NULL;} | |
74 | Double_t * CheckESD(TObjArray** /*list*/){return NULL;} | |
75 | TH1* GetHisto(TObjArray* list, const char* hname, Int_t specie) const; | |
76 | Double_t MarkHisto(TH1& histo, Double_t value) const; | |
77 | ||
78 | ||
79 | private: | |
80 | //TH1F * htemp; //a tempory histrogram for getting the mean and sigma | |
81 | //Double_t fMean; //mean value | |
82 | //Double_t fWidth; //sigma of the distribution | |
83 | static const Int_t fknSM = 4; //! number of current SM | |
84 | TLine ** fLine ; //! line to distinguish the different SM | |
85 | TLine ** fHref ; //! Line marking the average value for each SM | |
86 | TPaveText * fText ; //! Information text for the quality of each SM | |
87 | ||
94594e5d | 88 | |
9e47432c | 89 | ClassDef(AliEMCALQAChecker,2) // description |
94594e5d | 90 | |
91 | }; | |
92 | ||
93 | #endif // AliEMCALQAChecker_H |