]>
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 ; | |
38986b78 | 24 | class TText ; |
9e47432c | 25 | class TObjArray; |
38986b78 | 26 | class TPaveText ; |
94594e5d | 27 | |
28 | // --- Standard library --- | |
94594e5d | 29 | // --- AliRoot header files --- |
30 | #include "AliQACheckerBase.h" | |
31 | class AliEMCALLoader ; | |
32 | ||
33 | class AliEMCALQAChecker: public AliQACheckerBase { | |
34 | ||
35 | public: | |
38986b78 | 36 | //Histograms for Raw data control |
37 | enum HRawType_t { | |
38 | // first normal Low Gain and High Gain info | |
9e47432c | 39 | kNsmodLG,kNsmodHG,kTimeLG,kTimeHG, |
00957c37 | 40 | kNtotLG,kNtotHG,kSigHG,kSigLG, |
38986b78 | 41 | kPedLG,kPedHG, |
42 | k2DRatioAmp,kRatioDist, kLEDMonRatio, kLEDMonRatioDist, | |
43 | // then TRU info | |
44 | kNsmodTRU,kTimeTRU, | |
45 | kSigTRU,kNtotTRU, | |
46 | kPedTRU, | |
47 | kNL0TRU, kTimeL0TRU, | |
48 | // and also LED Mon info | |
49 | kNsmodLGLEDMon,kNsmodHGLEDMon,kTimeLGLEDMon,kTimeHGLEDMon, | |
50 | kSigLGLEDMon,kSigHGLEDMon,kNtotLGLEDMon,kNtotHGLEDMon, | |
51 | kPedLGLEDMon,kPedHGLEDMon | |
52 | } ; | |
9e47432c | 53 | //Histograms for RecPoints control |
54 | enum HRPType_t {kRecPE,kRecPM,kRecPDigM}; | |
55 | ||
56 | //Histograms for ESDs control | |
57 | enum HESDType_t {kESDCaloClusE,kESDCaloClusM,kESDCaloCellA,kESDCaloCellM} ; | |
94594e5d | 58 | |
9e47432c | 59 | AliEMCALQAChecker() ; // ctor |
07548920 | 60 | AliEMCALQAChecker(const AliEMCALQAChecker& qac); |
61 | AliEMCALQAChecker& operator = (const AliEMCALQAChecker& qac) ; | |
9e47432c | 62 | virtual ~AliEMCALQAChecker() ; // dtor |
63 | ||
64 | virtual void Init(const AliQAv1::DETECTORINDEX_t det) ; | |
65 | ||
66 | protected: | |
67 | ||
a42ceb0e | 68 | virtual void Check( Double_t * test, AliQAv1::ALITASK_t index, TObjArray ** list, const AliDetectorRecoParam * /*recoParam*/) ; |
9e47432c | 69 | //virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ; |
70 | ||
a42ceb0e | 71 | void CheckRaws(Double_t* test, TObjArray ** list); |
1a78a765 | 72 | void CheckRecPoints(Double_t* /*test*/, TObjArray** /*list*/){;} |
73 | void CheckESD(Double_t* /*test*/, TObjArray** /*list*/){;} | |
9e47432c | 74 | TH1* GetHisto(TObjArray* list, const char* hname, Int_t specie) const; |
75 | Double_t MarkHisto(TH1& histo, Double_t value) const; | |
76 | ||
77 | ||
78 | private: | |
79 | //TH1F * htemp; //a tempory histrogram for getting the mean and sigma | |
80 | //Double_t fMean; //mean value | |
81 | //Double_t fWidth; //sigma of the distribution | |
82 | static const Int_t fknSM = 4; //! number of current SM | |
38986b78 | 83 | // TLine ** fLine ; //! line to distinguish the different SM |
84 | // TLine ** fHref ; //! Line marking the average value for each SM | |
85 | TText ** fTextSM ; //! Text info for each SM | |
86 | TLine * fLineCol ; //! line to distinguish the different SM side: A side and C side | |
87 | TLine * fLineRow ; //! line to distinguish the different SM sector 0 and 1 | |
88 | TPaveText * fText ; //! Information text for the quality of each SM | |
9e47432c | 89 | ClassDef(AliEMCALQAChecker,2) // description |
94594e5d | 90 | |
91 | }; | |
92 | ||
93 | #endif // AliEMCALQAChecker_H |