Based on PHOS code written by
Y. Schutz CERN July 2007
+
+ Implemented by Yaxian Mao (CERN Oct. 2009)
*/
class TFile ;
class TH1F ;
class TH1I ;
+class TH1 ;
+class TLine ;
+class TText ;
+class TObjArray;
+class TPaveText ;
// --- Standard library ---
-
// --- AliRoot header files ---
#include "AliQACheckerBase.h"
class AliEMCALLoader ;
class AliEMCALQAChecker: public AliQACheckerBase {
public:
- AliEMCALQAChecker() : AliQACheckerBase("EMCAL","EMCAL Quality Assurance Data Maker") {;} // ctor
- virtual ~AliEMCALQAChecker() {;} // dtor
+ //Histograms for Raw data control
+ enum HRawType_t {
+ // first normal Low Gain and High Gain info
+ kNsmodLG,kNsmodHG,kTimeLG,kTimeHG,
+ kNtotLG,kNtotHG,kSigHG,kSigLG,
+ kPedLG,kPedHG,
+ k2DRatioAmp,kRatioDist, kLEDMonRatio, kLEDMonRatioDist,
+ // then TRU info
+ kNsmodTRU,
+ kSigTRU,kNtotTRU,
+ kNL0TRU, kTimeL0TRU,
+ kNL0FirstTRU, kTimeL0FirstTRU,
+ // and also LED Mon info
+ kNsmodLGLEDMon,kNsmodHGLEDMon,kTimeLGLEDMon,kTimeHGLEDMon,
+ kSigLGLEDMon,kSigHGLEDMon,kNtotLGLEDMon,kNtotHGLEDMon,
+ kPedLGLEDMon,kPedHGLEDMon,
+ //and STU info
+ kAmpL1, kGL1, kJL1,
+ kGL1V0, kJL1V0, kSTUTRU
+ } ;
+ //Histograms for RecPoints control
+ enum HRPType_t {kRecPE,kRecPM,kRecPDigM};
+
+ //Histograms for ESDs control
+ enum HESDType_t {kESDCaloClusE,kESDCaloClusM,kESDCaloCellA,kESDCaloCellM} ;
+ AliEMCALQAChecker() ; // ctor
+ virtual ~AliEMCALQAChecker() ; // dtor
+
+ virtual void Init(const AliQAv1::DETECTORINDEX_t det) ;
+
+protected:
+
+ virtual void Check( Double_t * test, AliQAv1::ALITASK_t index, TObjArray ** list, const AliDetectorRecoParam * /*recoParam*/) ;
+ //virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ;
+
+ void CheckRaws(Double_t* test, TObjArray ** list);
+ void CheckRecPoints(Double_t* /*test*/, TObjArray** /*list*/) const {;}
+ void CheckESD(Double_t* /*test*/, TObjArray** /*list*/) const {;}
+ void CleanListOfFunctions(TList *list);
+ TH1* GetHisto(TObjArray* list, const char* hname, Int_t specie) const;
+ Double_t MarkHisto(TH1& histo, Double_t value) const;
+
+
private:
AliEMCALQAChecker(const AliEMCALQAChecker& qac);
AliEMCALQAChecker& operator = (const AliEMCALQAChecker& qac) ;
-
- ClassDef(AliEMCALQAChecker,1) // description
+ //TH1F * htemp; //a tempory histrogram for getting the mean and sigma
+ //Double_t fMean; //mean value
+ //Double_t fWidth; //sigma of the distribution
+ static const Int_t fgknSM = 12; //! number of current SM
+// TLine ** fLine ; //! line to distinguish the different SM
+// TLine ** fHref ; //! Line marking the average value for each SM
+ TText ** fTextSM ; //! Text info for each SM
+ TLine * fLineCol ; //! line to distinguish the different SM side: A side and C side
+ TLine * fLineRow[5] ; //! line to distinguish the different SM sectors (0-5)
+ TPaveText * fText ; //! Information text for the quality of each SM
+ TPaveText * fTextL1[3]; //! Information text for the quality of L1 plots (3 plots in total)
+ ClassDef(AliEMCALQAChecker,4) // description
};