MergeQA is now an intrinsic part of AliReconstruction
[u/mrichter/AliRoot.git] / STEER / AliQADataMakerRec.h
CommitLineData
202374b1 1#ifndef ALIQADATAMAKERREC_H
2#define ALIQADATAMAKERREC_H
04236e67 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7/* $Id$ */
202374b1 8//
9// Base Class:
10// Produces the data needed to calculate the quality assurance.
11// All data must be mergeable objects.
12// Y. Schutz CERN July 2007
13//
04236e67 14
15// --- ROOT system ---
57acd2d2 16class TNtupleD ;
04236e67 17// --- Standard library ---
18
19// --- AliRoot header files ---
fb6e511e 20class AliDetectorRecoParam ;
04236e67 21#include "AliQADataMaker.h"
4e25ac79 22#include "AliQAv1.h"
04236e67 23
24class AliQADataMakerRec: public AliQADataMaker {
25
26public:
27
28 AliQADataMakerRec(const char * name="", const char * title="") ; // ctor
29 AliQADataMakerRec(const AliQADataMakerRec& qadm) ;
30 AliQADataMakerRec& operator = (const AliQADataMakerRec& qadm) ;
63c6f8ae 31 virtual ~AliQADataMakerRec() ; // dtor
04236e67 32
44ed7a66 33 virtual Int_t Add2DigitsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE)
34 { return Add2List(hist, index, fDigitsQAList, expert, image) ; }
35 virtual Int_t Add2ESDsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE)
36 { return Add2List(hist, index, fESDsQAList, expert, image) ; }
37 virtual Int_t Add2HitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/)
38 { return -1 ; }
39 virtual Int_t Add2RecPointsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE)
40 { return Add2List(hist, index, fRecPointsQAList, expert, image) ; }
02392740 41 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) {
42 return Add2List(hist, index, fRawsQAList, expert, image, saveForCorr) ; }
7d297381 43 virtual Int_t Add2SDigitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/) { return -1 ; }
4e25ac79 44 virtual void Exec(AliQAv1::TASKINDEX_t task, TObject * data) ;
930e6e3e 45 virtual void EndOfCycle() ;
4e25ac79 46 virtual void EndOfCycle(AliQAv1::TASKINDEX_t task) ;
47 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray ** ) {AliInfo("To be implemented by detectors");}
44ed7a66 48 virtual TH1 * GetDigitsData(const Int_t index ) { return dynamic_cast<TH1 *>(GetData(fDigitsQAList, index)) ; }
57acd2d2 49 virtual TH1 * GetESDsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fESDsQAList, index)) ; }
50 virtual TH1 * GetHitsData(const Int_t /*index*/) { return NULL ; }
2b261f20 51 virtual const AliDetectorRecoParam * GetRecoParam() { return fRecoParam ; }
52
57acd2d2 53 virtual TH1 * GetRecPointsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRecPointsQAList, index)) ; }
54 virtual TH1 * GetRawsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRawsQAList, index)) ; }
04236e67 55 virtual TH1 * GetSDigitsData(const Int_t /*index*/) { return NULL ; }
7d297381 56 virtual void MakeImage(AliQAv1::TASKINDEX_t task) ;
4e25ac79 57 virtual TObjArray** Init(AliQAv1::TASKINDEX_t task, Int_t cycles = -1) ;
58 virtual void Init(AliQAv1::TASKINDEX_t task, TObjArray ** list, Int_t run, Int_t cycles = -1) ;
930e6e3e 59 virtual void StartOfCycle(Int_t run = -1) ;
4e25ac79 60 virtual void StartOfCycle(AliQAv1::TASKINDEX_t task, Int_t run, const Bool_t sameCycle = kFALSE) ;
a2b64fbd 61 virtual void SetRecoParam(const AliDetectorRecoParam *param) { fRecoParam = param; }
b8bd1ab8 62
04236e67 63protected:
64
44ed7a66 65 virtual void InitDigits() {AliInfo("To be implemented by detectors");}
04236e67 66 virtual void InitESDs() {AliInfo("To be implemented by detectors");}
fb6e511e 67 virtual void InitRecoParams() ;
edf10d5d 68 virtual void InitHits() {AliWarning("Call not valid") ; }
04236e67 69 //virtual void InitRecParticles() {AliInfo("To be implemented by detectors");}
70 virtual void InitRecPoints() {AliInfo("To be implemented by detectors");}
71 virtual void InitRaws() {AliInfo("To be implemented by detectors");}
edf10d5d 72 virtual void InitSDigits() {AliWarning("Call not valid") ; }
04236e67 73 //virtual void InitTrackSegments() {AliInfo("To ne implemented by detectors");}
74 virtual void MakeESDs(AliESDEvent * ) {AliInfo("To be implemented by detectors");}
edf10d5d 75 virtual void MakeHits(TClonesArray * ) {AliWarning("Call not valid") ; }
76 virtual void MakeHits(TTree * ) {AliWarning("Call not valid") ; }
44ed7a66 77 virtual void MakeDigits(TClonesArray * ) {AliInfo("To be implemented by detectors");}
78 virtual void MakeDigits(TTree * ) {AliInfo("To be implemented by detectors");}
04236e67 79 //virtual void MakeRecParticles(TClonesArray * ) {AliInfo("To be implemented by detectors");}
80 virtual void MakeRaws(AliRawReader *) {AliInfo("To be implemented by detectors");}
81 virtual void MakeRecPoints(TTree * ) {AliInfo("To be implemented by detectors");}
edf10d5d 82 virtual void MakeSDigits(TClonesArray * ) {AliWarning("Call not valid") ; }
83 virtual void MakeSDigits(TTree * ) {AliWarning("Call not valid") ; }
04236e67 84 virtual void StartOfDetectorCycle() {AliInfo("To be implemented by detectors");}
85
44ed7a66 86 TObjArray * * fDigitsQAList ; //! list of the digits QA data objects
57acd2d2 87 TObjArray * * fESDsQAList ; //! list of the ESDs QA data objects
88 TObjArray * * fRawsQAList ; //! list of the raws QA data objects
89 TObjArray * * fRecPointsQAList ; //! list of the RecPoints QA data objects
90 TNtupleD * * fCorrNt ; //! This is used by Corr only to hold its Ntuple.
a2b64fbd 91 const AliDetectorRecoParam *fRecoParam; //! const pointer to the reco parameters to be used in the reco QA
04236e67 92
44ed7a66 93 ClassDef(AliQADataMakerRec,3) // description
04236e67 94
95};
96
202374b1 97#endif // ALIQADATAMAKERREC_H