1 #ifndef ALIQADATAMAKERREC_H
2 #define ALIQADATAMAKERREC_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
11 // Produces the data needed to calculate the quality assurance.
12 // All data must be mergeable objects.
13 // Y. Schutz CERN July 2007
16 // --- ROOT system ---
18 // --- Standard library ---
20 // --- AliRoot header files ---
21 class AliDetectorRecoParam ;
22 #include "AliQADataMaker.h"
25 class AliQADataMakerRec: public AliQADataMaker {
29 AliQADataMakerRec(const char * name="", const char * title="") ; // ctor
30 AliQADataMakerRec(const AliQADataMakerRec& qadm) ;
31 AliQADataMakerRec& operator = (const AliQADataMakerRec& qadm) ;
32 virtual ~AliQADataMakerRec() ; // dtor
34 virtual Int_t Add2DigitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/) { return -1 ; }
35 virtual Int_t Add2ESDsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE) { return Add2List(hist, index, fESDsQAList, expert, image) ; }
36 virtual Int_t Add2HitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/) { return -1 ; }
37 virtual Int_t Add2RecPointsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE) { return Add2List(hist, index, fRecPointsQAList, expert, image) ; }
38 virtual Int_t Add2RawsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE, const Bool_t saveForCorr = kFALSE) {
39 return Add2List(hist, index, fRawsQAList, expert, image, saveForCorr) ; }
40 virtual Int_t Add2SDigitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/) { return -1 ; }
41 virtual void Exec(AliQAv1::TASKINDEX_t task, TObject * data) ;
42 virtual void EndOfCycle() ;
43 virtual void EndOfCycle(AliQAv1::TASKINDEX_t task) ;
44 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray ** ) {AliInfo("To be implemented by detectors");}
45 virtual TH1 * GetDigitsData(const Int_t /*index*/) { return NULL ; }
46 virtual TH1 * GetESDsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fESDsQAList, index)) ; }
47 virtual TH1 * GetHitsData(const Int_t /*index*/) { return NULL ; }
48 virtual const AliDetectorRecoParam * GetRecoParam() { return fRecoParam ; }
50 virtual TH1 * GetRecPointsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRecPointsQAList, index)) ; }
51 virtual TH1 * GetRawsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRawsQAList, index)) ; }
52 virtual TH1 * GetSDigitsData(const Int_t /*index*/) { return NULL ; }
53 virtual void MakeImage(AliQAv1::TASKINDEX_t task) ;
54 virtual TObjArray** Init(AliQAv1::TASKINDEX_t task, Int_t cycles = -1) ;
55 virtual void Init(AliQAv1::TASKINDEX_t task, TObjArray ** list, Int_t run, Int_t cycles = -1) ;
56 virtual void StartOfCycle(Int_t run = -1) ;
57 virtual void StartOfCycle(AliQAv1::TASKINDEX_t task, Int_t run, const Bool_t sameCycle = kFALSE) ;
58 virtual void SetRecoParam(const AliDetectorRecoParam *param) { fRecoParam = param; }
62 virtual void InitDigits() {AliWarning("Call not valid") ; }
63 virtual void InitESDs() {AliInfo("To be implemented by detectors");}
64 virtual void InitRecoParams() ;
65 virtual void InitHits() {AliWarning("Call not valid") ; }
66 //virtual void InitRecParticles() {AliInfo("To be implemented by detectors");}
67 virtual void InitRecPoints() {AliInfo("To be implemented by detectors");}
68 virtual void InitRaws() {AliInfo("To be implemented by detectors");}
69 virtual void InitSDigits() {AliWarning("Call not valid") ; }
70 //virtual void InitTrackSegments() {AliInfo("To ne implemented by detectors");}
71 virtual void MakeESDs(AliESDEvent * ) {AliInfo("To be implemented by detectors");}
72 virtual void MakeHits(TClonesArray * ) {AliWarning("Call not valid") ; }
73 virtual void MakeHits(TTree * ) {AliWarning("Call not valid") ; }
74 virtual void MakeDigits(TClonesArray * ) {AliWarning("Call not valid") ; }
75 virtual void MakeDigits(TTree * ) {AliWarning("Call not valid") ; }
76 //virtual void MakeRecParticles(TClonesArray * ) {AliInfo("To be implemented by detectors");}
77 virtual void MakeRaws(AliRawReader *) {AliInfo("To be implemented by detectors");}
78 virtual void MakeRecPoints(TTree * ) {AliInfo("To be implemented by detectors");}
79 virtual void MakeSDigits(TClonesArray * ) {AliWarning("Call not valid") ; }
80 virtual void MakeSDigits(TTree * ) {AliWarning("Call not valid") ; }
81 virtual void StartOfDetectorCycle() {AliInfo("To be implemented by detectors");}
83 TObjArray * * fESDsQAList ; //! list of the ESDs QA data objects
84 TObjArray * * fRawsQAList ; //! list of the raws QA data objects
85 TObjArray * * fRecPointsQAList ; //! list of the RecPoints QA data objects
86 TNtupleD * * fCorrNt ; //! This is used by Corr only to hold its Ntuple.
87 const AliDetectorRecoParam *fRecoParam; //! const pointer to the reco parameters to be used in the reco QA
89 ClassDef(AliQADataMakerRec,2) // description
93 #endif // ALIQADATAMAKERREC_H