]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIQACHECKERBASE_H | |
2 | #define ALIQACHECKERBASE_H | |
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 | ||
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 | // | |
14 | ||
15 | ||
16 | // --- ROOT system --- | |
17 | #include <TNamed.h> | |
18 | #include "AliQA.h" | |
19 | class TFile ; | |
20 | class TH1 ; | |
21 | class TObjArray ; | |
22 | class TDirectory ; | |
23 | class TNtupleD ; | |
24 | ||
25 | // --- Standard library --- | |
26 | ||
27 | // --- AliRoot header files --- | |
28 | ||
29 | class AliQACheckerBase: public TNamed { | |
30 | ||
31 | public: | |
32 | AliQACheckerBase(const char * name = "", const char * title = "") ; // ctor | |
33 | AliQACheckerBase(const AliQACheckerBase& qac) ; | |
34 | AliQACheckerBase& operator = (const AliQACheckerBase& qac) ; | |
35 | virtual ~AliQACheckerBase() ; // dtor | |
36 | ||
37 | virtual void Init(const AliQA::DETECTORINDEX_t det) { AliQA::Instance(det) ; } | |
38 | void Run(AliQA::ALITASK_t tsk, TObjArray ** list = NULL); | |
39 | void Run(AliQA::ALITASK_t /*tsk*/, TNtupleD ** /*nt*/) {;} | |
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 ; } | |
42 | ||
43 | protected: | |
44 | virtual Double_t * Check(AliQA::ALITASK_t index) ; | |
45 | virtual Double_t * Check(AliQA::ALITASK_t, TObjArray **) ; | |
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 ; | |
50 | virtual void SetQA(AliQA::ALITASK_t index, Double_t * value) const ; | |
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 | |
57 | ||
58 | ClassDef(AliQACheckerBase,1) // description | |
59 | ||
60 | }; | |
61 | ||
62 | #endif // AliQUALASSCHECKERBASE_H |