TList replaced by TObjArray as QA data container. Introducing OCDB for the reference...
[u/mrichter/AliRoot.git] / STEER / AliQACheckerBase.h
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
24 // --- Standard library ---
25
26 // --- AliRoot header files ---
27
28 class AliQACheckerBase: public TNamed {
29
30 public:
31   AliQACheckerBase(const char * name = "", const char * title = "") ;          // ctor
32   AliQACheckerBase(const AliQACheckerBase& qac) ;   
33   AliQACheckerBase& operator = (const AliQACheckerBase& qac) ;
34   virtual ~AliQACheckerBase() {;} // dtor
35
36   void   Init(const AliQA::DETECTORINDEX det) ; 
37   void   Run(AliQA::ALITASK tsk, TObjArray * list=0x0); 
38   void   SetRefandData(TDirectory * ref, TList * refOCDB, TDirectory * data=NULL) { fRefSubDir = ref ;  fRefOCDBSubDir = refOCDB, fDataSubDir = data ; }
39
40 protected:
41   virtual const Double_t Check() ;
42   virtual const Double_t Check(TObjArray * list) ;
43   const Double_t DiffC(const TH1 * href, const TH1 * hin) const ;   
44   const Double_t DiffK(const TH1 * href, const TH1 * hin) const ;   
45   void           Finish() const ; 
46
47   TDirectory  * fDataSubDir    ; //! directory for the current task directory in the current detector directory in the data file
48   TDirectory  * fRefSubDir     ; //! directory for the current task directory in the current detector directory in the reference file
49   TList       * fRefOCDBSubDir ; //! Entry in OCDB for the current detector 
50
51   ClassDef(AliQACheckerBase,1)  // description 
52
53 };
54
55 #endif // AliQUALASSCHECKERBASE_H