- Three classes by MinJung Kweon AliHFEpriVtx, AliHFEsecVtx and AliHFEmcQA for primar...
[u/mrichter/AliRoot.git] / STEER / AliQAChecker.h
CommitLineData
2e42b4d4 1#ifndef ALIQAChecker_H
2#define ALIQAChecker_H
421ab0fb 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:
2e42b4d4 11// AliQAChecker qac;
421ab0fb 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>
57acd2d2 19class TNtupleD ;
421ab0fb 20
4e25ac79 21#include "AliQAv1.h"
57acd2d2 22#include "AliRecoParam.h"
4edbc5bc 23class AliCDBEntry ;
7e88424f 24class AliRunInfo ;
2e42b4d4 25class AliQACheckerBase ;
421ab0fb 26
2e42b4d4 27class AliQAChecker: public TNamed {
421ab0fb 28public:
2e42b4d4 29 AliQAChecker(const char* name = "AliQAChecker",
a4976ef3 30 const char* title = "Quality Assurance checker for Raws, Hits, Digits and ESDs");
2e42b4d4 31 AliQAChecker(const AliQAChecker& qac);
32 AliQAChecker& operator = (const AliQAChecker& qac);
33 virtual ~AliQAChecker();
421ab0fb 34
2e42b4d4 35 static AliQAChecker * Instance() ;
36 AliQACheckerBase * GetDetQAChecker(Int_t det) ;
57acd2d2 37 void GetRefSubDir(const char * det, const char * task, TDirectory *& dirFile, TObjArray **& dirOCDB) ;
8bea2de0 38// static TFile * GetQAResultFile() ;
4ecde5fc 39// static const char * GetQAResultFileName() { return fgQAResultFileName.Data() ; }
40// void SetQAResultDirName(const char * name) ;
94faf3be 41// void SetRefDirName(const char * name) ;
421ab0fb 42
808b7099 43 virtual Bool_t Run(const char * fileName = NULL) ;
4e25ac79 44 virtual Bool_t Run(AliQAv1::DETECTORINDEX_t det, AliQAv1::TASKINDEX_t task, TObjArray ** list);
45 virtual Bool_t Run(AliQAv1::DETECTORINDEX_t det, AliQAv1::TASKINDEX_t task, TNtupleD ** list);
7e88424f 46 void SetRunInfo(AliRunInfo * ei) {fRunInfo = ei;}
a4976ef3 47
421ab0fb 48private:
a5fa6165 49
7e88424f 50 void LoadRunInfoFromGRP() ;
cbae8032 51
57acd2d2 52 static AliQAChecker * fgQAChecker ; // pointer to the instance of the singleton
53 TFile * fDataFile ; //! Data file to check
54 AliRunInfo * fRunInfo ; //! Event info object
55 Bool_t fRunInfoOwner; //! owns fRunInfo or not
56 TFile * fRefFile ; //! Reference Data file
57 TString fFoundDetectors ; //! detectors for which the Quality assurance could be done
4e25ac79 58 AliQACheckerBase * fCheckers[AliQAv1::kNDET] ; //! list of detectors checkers
57acd2d2 59 AliRecoParam::EventSpecie_t fEventSpecie ; //! event specie deduced from the GRP data
2e42b4d4 60 ClassDef(AliQAChecker, 1) // class for running generation, simulation and digitization
421ab0fb 61};
421ab0fb 62#endif