]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliQACheckerBase.h
Adding the missing GRP entries to the esd event tag (Panos)
[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 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   void   Init(const AliQA::DETECTORINDEX_t det) ; 
38   void   Run(AliQA::ALITASK_t tsk, TObject * obj = NULL); 
39   void   SetRefandData(TDirectory * ref, TObjArray * refOCDB, TDirectory * data=NULL) { fRefSubDir = ref ;  fRefOCDBSubDir = refOCDB, fDataSubDir = data ; }
40
41 protected:
42   virtual const Double_t Check(AliQA::ALITASK_t index) ;
43   virtual const Double_t Check(AliQA::ALITASK_t, TObjArray *) ; 
44   virtual const Double_t Check(AliQA::ALITASK_t, TNtupleD *) { return -1.0 ;} 
45   const Double_t DiffC(const TH1 * href, const TH1 * hin) const ;   
46   const Double_t DiffK(const TH1 * href, const TH1 * hin) const ;   
47   void           Finish() const ; 
48   virtual void   SetQA(AliQA::ALITASK_t index, Double_t value) const ;  
49
50   TDirectory  * fDataSubDir    ; //! directory for the current task directory in the current detector directory in the data file
51   TDirectory  * fRefSubDir     ; //! directory for the current task directory in the current detector directory in the reference file
52   TObjArray   * fRefOCDBSubDir ; //! Entry in OCDB for the current detector 
53
54   ClassDef(AliQACheckerBase,1)  // description 
55
56 };
57
58 #endif // AliQUALASSCHECKERBASE_H