Fixes for bug #49914: Compilation breaks in trunk, and bug #48629: Trunk cannot read...
[u/mrichter/AliRoot.git] / STEER / AliQACheckerBase.h
CommitLineData
2e42b4d4 1#ifndef ALIQACHECKERBASE_H
2#define ALIQACHECKERBASE_H
421ab0fb 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7/* $Id$ */
8
202374b1 9//
10// Base class for detectors quality assurance checkers
11// Compares Data made by QADataMakers with reference data
12// Y. Schutz CERN August 2007
13//
421ab0fb 14
15
16// --- ROOT system ---
17#include <TNamed.h>
4e25ac79 18#include "AliQAv1.h"
421ab0fb 19class TFile ;
a5fa6165 20class TH1 ;
4edbc5bc 21class TObjArray ;
4b2b2b55 22class TDirectory ;
a2b64fbd 23class TNtupleD ;
421ab0fb 24
25// --- Standard library ---
26
27// --- AliRoot header files ---
28
2e42b4d4 29class AliQACheckerBase: public TNamed {
421ab0fb 30
31public:
2e42b4d4 32 AliQACheckerBase(const char * name = "", const char * title = "") ; // ctor
33 AliQACheckerBase(const AliQACheckerBase& qac) ;
34 AliQACheckerBase& operator = (const AliQACheckerBase& qac) ;
57acd2d2 35 virtual ~AliQACheckerBase() ; // dtor
2e42b4d4 36
4e25ac79 37 virtual void Init(const AliQAv1::DETECTORINDEX_t det) { AliQAv1::Instance(det) ; }
38 void Run(AliQAv1::ALITASK_t tsk, TObjArray ** list = NULL);
39 void Run(AliQAv1::ALITASK_t /*tsk*/, TNtupleD ** /*nt*/) {;}
57acd2d2 40 void SetHiLo(Float_t * hiValue, Float_t * lowValue) ;
41 void SetRefandData(TDirectory * ref, TObjArray ** refOCDB, TDirectory * data=NULL) { fRefSubDir = ref ; fRefOCDBSubDir = refOCDB, fDataSubDir = data ; }
421ab0fb 42
43protected:
4e25ac79 44 virtual Double_t * Check(AliQAv1::ALITASK_t index) ;
45 virtual Double_t * Check(AliQAv1::ALITASK_t, TObjArray **) ;
57acd2d2 46
47 Double_t DiffC(const TH1 * href, const TH1 * hin) const ;
48 Double_t DiffK(const TH1 * href, const TH1 * hin) const ;
49 void Finish() const ;
4e25ac79 50 virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ;
57acd2d2 51
52 TDirectory * fDataSubDir ; //! directory for the current task directory in the current detector directory in the data file
53 TDirectory * fRefSubDir ; //! directory for the current task directory in the current detector directory in the reference file
54 TObjArray ** fRefOCDBSubDir ; //! Entry in OCDB for the current detector
55 Float_t * fLowTestValue ; // array of lower bounds for INFO, WARNING, ERROR, FATAL
56 Float_t * fUpTestValue ; // array of upper bounds for INFO, WARNING, ERROR, FATAL
421ab0fb 57
2e42b4d4 58 ClassDef(AliQACheckerBase,1) // description
421ab0fb 59
60};
61
62#endif // AliQUALASSCHECKERBASE_H