#ifndef ALIT0QACHECKER_H
#define ALIT0QACHECKER_H
class TFile ;
class TH1F ;
#include "AliQACheckerBase.h"
class AliT0QAChecker: public AliQACheckerBase {
public:
AliT0QAChecker();
AliT0QAChecker(const AliT0QAChecker& qac);
AliT0QAChecker& operator=(const AliT0QAChecker& qac);
virtual ~AliT0QAChecker();
Double_t CheckRaw(TObjArray *listrec ) const ;
Double_t CheckESD(TObjArray *listrec ) const ;
private:
enum{
kT0Fatal=-1,
kT0Error=0,
kT0Warning=1,
kT0Info=2
};
virtual void Check(Double_t * test, AliQAv1::ALITASK_t, TObjArray ** list, const AliDetectorRecoParam * recoParam) ;
void EraseOldMessages(TH1* h) const;
Double_t ConvertQualityFlagToDouble(int qualityFlag) const;
Float_t GetMeanAboveThreshold(TH1F* hV, Float_t thr) const;
void GetMeanAndRmsAroundMainMaximum(Float_t &meanHisto,Float_t &rmsHisto, TH1F *histo, int type) const;
Float_t fMeanCFDFromGoodRunParam[24];
Float_t fMeanLEDFromGoodRunParam[24];
Float_t fMeanQTCFromGoodRunParam[24];
Float_t fCFDErrorThreshold;
Float_t fLEDErrorThreshold;
Float_t fQTCErrorThreshold;
Float_t fRatioCFDEffLEDEffErrorThreshold;
Float_t fQTCEfficiencyErrorThreshold;
Int_t fBCIDPeriodParam;
Int_t fBCIDOffsetParam;
Int_t fBCIDBandWidthParam;
Float_t fTZeroAPlusCErrorThreshold;
Float_t fTZeroAMinusCErrorThreshold;
ClassDef(AliT0QAChecker,1)
};
#endif // AliT0QAChecker_H