]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliQACheckerBase.h
Fix of a bug that arises when adding more than 1 function to AliRsnPairFunctions
[u/mrichter/AliRoot.git] / STEER / AliQACheckerBase.h
index 0bac1e1ee77e1ea064d25c058db58f5ca4a23e3a..1492a3fbf9e09cac4ad7aa52df11f2fb458b47af 100644 (file)
 
 // --- ROOT system ---
 #include <TNamed.h>
-#include "AliQA.h"
+#include "AliQAv1.h"
+class TCanvas ; 
 class TFile ; 
 class TH1 ; 
 class TObjArray ; 
 class TDirectory ; 
 class TNtupleD ;
+class AliDetectorRecoParam ; 
+class TList ; 
 
 // --- Standard library ---
 
@@ -32,26 +35,43 @@ public:
   AliQACheckerBase(const char * name = "", const char * title = "") ;          // ctor
   AliQACheckerBase(const AliQACheckerBase& qac) ;   
   AliQACheckerBase& operator = (const AliQACheckerBase& qac) ;
-  virtual ~AliQACheckerBase() {;} // dtor
-
-  void   Init(const AliQA::DETECTORINDEX_t det) ; 
-  void   Run(AliQA::ALITASK_t tsk, TObject * obj = NULL); 
-  void   SetRefandData(TDirectory * ref, TObjArray * refOCDB, TDirectory * data=NULL) { fRefSubDir = ref ;  fRefOCDBSubDir = refOCDB, fDataSubDir = data ; }
+  virtual ~AliQACheckerBase() ; // dtor
+  TList *        GetExternParamlist() { return fExternParamList ;}
+  TCanvas **     GetImage() { return fImage ; }
+  TCanvas *      GetImage(AliRecoParam::EventSpecie_t es) { return fImage[AliRecoParam::AConvert(es)] ; }
+  virtual void   Init(const AliQAv1::DETECTORINDEX_t det)   { AliQAv1::Instance(det) ; }
+  virtual void   MakeImage( TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode) ; 
+  void           PrintExternParam() ; 
+  void           Run(AliQAv1::ALITASK_t tsk, AliDetectorRecoParam * recoParam = NULL); 
+  void           Run(AliQAv1::ALITASK_t tsk, TObjArray ** list, AliDetectorRecoParam * recoParam = NULL); 
+  void           Run(AliQAv1::ALITASK_t /*tsk*/, TNtupleD ** /*nt*/, AliDetectorRecoParam * /*recoParam*/) {;} 
+  void           SetExternParamlist(TList * list) { fExternParamList = list ;}
+  void           SetHiLo(Float_t * hiValue, Float_t * lowValue) ; 
+  void           SetPrintImage(Bool_t opt = kTRUE) { fPrintImage = opt ; }
 
 protected:
-  virtual const Double_t Check(AliQA::ALITASK_t index) ;
-  virtual const Double_t Check(AliQA::ALITASK_t, TObjArray *) ; 
-  virtual const Double_t Check(AliQA::ALITASK_t, TNtupleD *) {;} 
-  const Double_t DiffC(const TH1 * href, const TH1 * hin) const ;   
-  const Double_t DiffK(const TH1 * href, const TH1 * hin) const ;   
-  void           Finish() const ; 
-  virtual void   SetQA(AliQA::ALITASK_t index, Double_t value) const ; 
-
-  TDirectory  * fDataSubDir    ; //! directory for the current task directory in the current detector directory in the data file
-  TDirectory  * fRefSubDir     ; //! directory for the current task directory in the current detector directory in the reference file
-  TObjArray   * fRefOCDBSubDir ; //! Entry in OCDB for the current detector 
-
-  ClassDef(AliQACheckerBase,1)  // description 
+  virtual void Check(Double_t *rv, AliQAv1::ALITASK_t, TObjArray **, const AliDetectorRecoParam * recoParam) ; 
+
+  Double_t     DiffC(const TH1 * href, const TH1 * hin) const ;   
+  Double_t     DiffK(const TH1 * href, const TH1 * hin) const ;   
+  void         Finish() const ; 
+  void         GetRefSubDir(const char * det, const char * task, TDirectory *& dirFile, TObjArray **& dirOCDB) ;
+  virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const ;       
+
+  TDirectory  * fDataSubDir     ; //! directory for the current task directory in the current detector directory in the data file
+  TDirectory  * fRefSubDir      ; //! directory for the current task directory in the current detector directory in the reference file
+  TObjArray   ** fRefOCDBSubDir ; //! Entry in OCDB for the current detector 
+  Float_t     * fLowTestValue   ; // array of lower bounds for INFO, WARNING, ERROR, FATAL   
+  Float_t     * fUpTestValue    ; // array of upper bounds for INFO, WARNING, ERROR, FATAL   
+  TCanvas **    fImage          ; //[AliRecoParam::kNSpecies] 
+  Bool_t        fPrintImage     ; //! flag to print the images or not
+  TList       * fExternParamList; //List of external parameters (TParameter<double>)  
+
+private:
+  void Check(Double_t * rv, AliQAv1::ALITASK_t index, const AliDetectorRecoParam * recoParam) ;
+
+  ClassDef(AliQACheckerBase,3)  // description 
 
 };