ROOT logo
#ifndef ALIQACHECKER_H
#define ALIQACHECKER_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */

//
// class for running the Quality Assurance Checker
// to run type:
//   AliQAChecker qac;
//   qac.Run();
//   qac.SelectDetectors("list of detectors") ; 
//   qac.SelectTargets("list of targets among Hits, Digits, ESD") ; 
//

#include <TNamed.h>
#include <TFile.h>  
class TNtupleD ;

#include "AliQAv1.h"
#include "AliRecoParam.h"
class AliCDBEntry ; 
class AliRunInfo ;
class AliQACheckerBase ; 
class AliDetectorRecoParam ; 

class AliQAChecker: public TNamed {
public:
  AliQAChecker(const char* name = "AliQAChecker", 
		    const char* title = "Quality Assurance checker for Raws, Hits, Digits and ESDs");
  AliQAChecker(const AliQAChecker& qac);
  AliQAChecker& operator = (const AliQAChecker& qac);
  virtual  ~AliQAChecker();

  static  AliQAChecker *     Instance() ;
  AliQACheckerBase *         GetDetQAChecker(Int_t det) ; 
  Bool_t Run(const char * fileName = NULL, AliDetectorRecoParam * recoParam = NULL) ;
  Bool_t Run(AliQAv1::DETECTORINDEX_t det, AliQAv1::TASKINDEX_t task, TObjArray ** list, AliDetectorRecoParam * recoParam = NULL);
  Bool_t Run(AliQAv1::DETECTORINDEX_t det, AliQAv1::TASKINDEX_t task, TNtupleD ** list, AliDetectorRecoParam * recoParam = NULL);
  void   SetRunInfo(AliRunInfo * ei) {fRunInfo = ei;}
  Int_t  GetRunNumber() const { return fRun ; } 
  void   SetRunNumber(Int_t run) { fRun = run ; } 

private:

  void LoadRunInfoFromGRP() ; 

  static AliQAChecker *       fgQAChecker ;             // pointer to the instance of the singleton
  TFile *                     fDataFile ;               //! Data file to check
  AliRunInfo *                fRunInfo ;                //! Event info object 
  Bool_t                      fRunInfoOwner;            //! owns fRunInfo or not
  TFile *                     fRefFile ;                //! Reference Data file 
  TString                     fFoundDetectors ;         //! detectors for which the Quality assurance could be done
  AliQACheckerBase *          fCheckers[AliQAv1::kNDET] ; //! list of detectors checkers
  AliRecoParam::EventSpecie_t fEventSpecie ;            //! event specie deduced from the GRP data
	Int_t                       fRun ;                    //! run number
  ClassDef(AliQAChecker, 1)  // class for running generation, simulation and digitization
};
#endif
 AliQAChecker.h:1
 AliQAChecker.h:2
 AliQAChecker.h:3
 AliQAChecker.h:4
 AliQAChecker.h:5
 AliQAChecker.h:6
 AliQAChecker.h:7
 AliQAChecker.h:8
 AliQAChecker.h:9
 AliQAChecker.h:10
 AliQAChecker.h:11
 AliQAChecker.h:12
 AliQAChecker.h:13
 AliQAChecker.h:14
 AliQAChecker.h:15
 AliQAChecker.h:16
 AliQAChecker.h:17
 AliQAChecker.h:18
 AliQAChecker.h:19
 AliQAChecker.h:20
 AliQAChecker.h:21
 AliQAChecker.h:22
 AliQAChecker.h:23
 AliQAChecker.h:24
 AliQAChecker.h:25
 AliQAChecker.h:26
 AliQAChecker.h:27
 AliQAChecker.h:28
 AliQAChecker.h:29
 AliQAChecker.h:30
 AliQAChecker.h:31
 AliQAChecker.h:32
 AliQAChecker.h:33
 AliQAChecker.h:34
 AliQAChecker.h:35
 AliQAChecker.h:36
 AliQAChecker.h:37
 AliQAChecker.h:38
 AliQAChecker.h:39
 AliQAChecker.h:40
 AliQAChecker.h:41
 AliQAChecker.h:42
 AliQAChecker.h:43
 AliQAChecker.h:44
 AliQAChecker.h:45
 AliQAChecker.h:46
 AliQAChecker.h:47
 AliQAChecker.h:48
 AliQAChecker.h:49
 AliQAChecker.h:50
 AliQAChecker.h:51
 AliQAChecker.h:52
 AliQAChecker.h:53
 AliQAChecker.h:54
 AliQAChecker.h:55
 AliQAChecker.h:56
 AliQAChecker.h:57
 AliQAChecker.h:58
 AliQAChecker.h:59
 AliQAChecker.h:60