BunchCrossing-based L1phase time offset correction added
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALQAChecker.h
CommitLineData
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 ---
19class TFile ;
20class TH1F ;
21class TH1I ;
9e47432c 22class TH1 ;
23class TLine ;
38986b78 24class TText ;
9e47432c 25class TObjArray;
38986b78 26class TPaveText ;
94594e5d 27
28// --- Standard library ---
94594e5d 29// --- AliRoot header files ---
30#include "AliQACheckerBase.h"
31class AliEMCALLoader ;
32
33class AliEMCALQAChecker: public AliQACheckerBase {
34
35public:
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
66protected:
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
78private:
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
8a38cd34 82 static const Int_t fknSM = 10; //! 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
8a38cd34 87 TLine * fLineRow[4] ; //! line to distinguish the different SM sectors (0-4)
38986b78 88 TPaveText * fText ; //! Information text for the quality of each SM
8a38cd34 89 ClassDef(AliEMCALQAChecker,3) // description
94594e5d 90
91};
92
93#endif // AliEMCALQAChecker_H