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 */
8 Checks the quality assurance.
9 By comparing with reference data
11 Based on PHOS code written by
12 Y. Schutz CERN July 2007
14 Implemented by Yaxian Mao (CERN Oct. 2009)
18 // --- ROOT system ---
28 // --- Standard library ---
29 // --- AliRoot header files ---
30 #include "AliQACheckerBase.h"
31 class AliEMCALLoader ;
33 class AliEMCALQAChecker: public AliQACheckerBase {
36 //Histograms for Raw data control
38 // first normal Low Gain and High Gain info
39 kNsmodLG,kNsmodHG,kTimeLG,kTimeHG,
40 kNtotLG,kNtotHG,kSigHG,kSigLG,
42 k2DRatioAmp,kRatioDist, kLEDMonRatio, kLEDMonRatioDist,
47 kNL0FirstTRU, kTimeL0FirstTRU,
48 // and also LED Mon info
49 kNsmodLGLEDMon,kNsmodHGLEDMon,kTimeLGLEDMon,kTimeHGLEDMon,
50 kSigLGLEDMon,kSigHGLEDMon,kNtotLGLEDMon,kNtotHGLEDMon,
51 kPedLGLEDMon,kPedHGLEDMon,
54 kGL1V0, kJL1V0, kSTUTRU
56 //Histograms for RecPoints control
57 enum HRPType_t {kRecPE,kRecPM,kRecPDigM};
59 //Histograms for ESDs control
60 enum HESDType_t {kESDCaloClusE,kESDCaloClusM,kESDCaloCellA,kESDCaloCellM} ;
62 AliEMCALQAChecker() ; // ctor
63 virtual ~AliEMCALQAChecker() ; // dtor
65 virtual void Init(const AliQAv1::DETECTORINDEX_t det) ;
69 virtual void Check( Double_t * test, AliQAv1::ALITASK_t index, TObjArray ** list, const AliDetectorRecoParam * /*recoParam*/) ;
70 //virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ;
72 void CheckRaws(Double_t* test, TObjArray ** list);
73 void CheckRecPoints(Double_t* /*test*/, TObjArray** /*list*/) const {;}
74 void CheckESD(Double_t* /*test*/, TObjArray** /*list*/) const {;}
75 void CleanListOfFunctions(TList *list);
76 TH1* GetHisto(TObjArray* list, const char* hname, Int_t specie) const;
77 Double_t MarkHisto(TH1& histo, Double_t value) const;
81 AliEMCALQAChecker(const AliEMCALQAChecker& qac);
82 AliEMCALQAChecker& operator = (const AliEMCALQAChecker& qac) ;
83 //TH1F * htemp; //a tempory histrogram for getting the mean and sigma
84 //Double_t fMean; //mean value
85 //Double_t fWidth; //sigma of the distribution
86 static const Int_t fgknSM = 12; //! number of current SM
87 // TLine ** fLine ; //! line to distinguish the different SM
88 // TLine ** fHref ; //! Line marking the average value for each SM
89 TText ** fTextSM ; //! Text info for each SM
90 TLine * fLineCol ; //! line to distinguish the different SM side: A side and C side
91 TLine * fLineRow[5] ; //! line to distinguish the different SM sectors (0-5)
92 TPaveText * fText ; //! Information text for the quality of each SM
93 TPaveText * fTextL1[3]; //! Information text for the quality of L1 plots (3 plots in total)
94 ClassDef(AliEMCALQAChecker,4) // description
98 #endif // AliEMCALQAChecker_H