]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliQAChecker.h
Changing name QualAss to QA
[u/mrichter/AliRoot.git] / STEER / AliQAChecker.h
1 #ifndef ALIQAChecker_H
2 #define ALIQAChecker_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //
9 // class for running the Quality Assurance Checker
10 // to run type:
11 //   AliQAChecker qac;
12 //   qac.Run();
13 //   qac.SelectDetectors("list of detectors") ; 
14 //   qac.SelectTargets("list of targets among Hits, Digits, ESD") ; 
15 //
16
17 #include <TNamed.h>
18 #include <TFile.h>  
19
20 #include "AliQA.h"
21 class AliQACheckerBase ; 
22
23 class AliQAChecker: public TNamed {
24 public:
25   AliQAChecker(const char* name = "AliQAChecker", 
26                     const char* title = "Quality Assurance checker for Raws, Hits, Digits and ESDs");
27   AliQAChecker(const AliQAChecker& qac);
28   AliQAChecker& operator = (const AliQAChecker& qac);
29   virtual ~AliQAChecker();
30
31   static  AliQAChecker * Instance() ;
32   AliQACheckerBase *     GetDetQAChecker(Int_t det) ; 
33   TDirectory *                GetRefSubDir(const char * det, const char * task) ;
34   static TFile *              GetQAResultFile() ;
35   static const char *         GetQAResultFileName() { return fgQAResultFileName.Data() ; }
36   void                        SetQAResultDirName(const char * name) ; 
37   void                        SetRefDirName(const char * name) ; 
38
39   virtual Bool_t Run();
40   virtual Bool_t Run(AliQA::DETECTORINDEX det, AliQA::TASKINDEX task, TList * list);
41
42 private:
43   TFile *      GetDataFile() ; 
44
45   static AliQAChecker *fgQAChecker ; // pointer to the instance of the singleton
46   TFile * fDataFile ;                     //! Data file to check
47   static TFile * fgQAResultFile ;         //! File where to find the QA result
48   static TString fgQAResultDirName ;      //! directory where to find the QA result
49   static TString fgQAResultFileName ;     //! file name where to find the QA result
50   TString fRefDirName ;                   //! name of directory where to find the reference data file
51   TString fRefName ;                      //! file name where to find the reference data
52   TString fFoundDetectors ;               //! detectors for which the Quality assurance could be done
53   AliQACheckerBase * fCheckers[AliQA::kNDET] ; //! list of detectors checkers
54   ClassDef(AliQAChecker, 1)  // class for running generation, simulation and digitization
55 };
56 #endif