Splitting of the QA maker into simulation and reconstruction dependent parts (Yves)
[u/mrichter/AliRoot.git] / STEER / AliQADataMakerRec.h
CommitLineData
04236e67 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 */
5
6
7/* $Id$ */
8
9/*
10 Base Class:
11 Produces the data needed to calculate the quality assurance.
12 All data must be mergeable objects.
13 Y. Schutz CERN July 2007
14*/
15
16
17// --- ROOT system ---
18
19// --- Standard library ---
20
21// --- AliRoot header files ---
22#include "AliQADataMaker.h"
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) ;
31 virtual ~AliQADataMakerRec() {;} // dtor
32
33 virtual const Int_t Add2DigitsList(TH1 * /*hist*/, const Int_t /*index*/) { return -1 ; }
34 virtual const Int_t Add2ESDsList(TH1 * hist, const Int_t index) { return Add2List(hist, index, fESDsQAList) ; }
35 virtual const Int_t Add2HitsList(TH1 * /*hist*/, const Int_t /*index*/) { return -1 ; }
36 virtual const Int_t Add2RecPointsList(TH1 * hist, const Int_t index) { return Add2List(hist, index, fRecPointsQAList) ; }
37 virtual const Int_t Add2RawsList(TH1 * hist, const Int_t index) { return Add2List(hist, index, fRawsQAList) ; }
38 virtual const Int_t Add2SDigitsList(TH1 * /*hist*/, const Int_t /*index*/) { return -1 ; }
39 virtual void Exec(AliQA::TASKINDEX, TObject * data) ;
40 virtual void EndOfCycle(AliQA::TASKINDEX) ;
41 virtual TH1 * GetDigitsData(const Int_t /*index*/) { return NULL ; }
42 virtual TH1 * GetESDsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fESDsQAList, index)) ; }
43 virtual TH1 * GetHitsData(const Int_t /*index*/) { return NULL ; }
44 virtual TH1 * GetRecPointsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRecPointsQAList, index)) ; }
45 virtual TH1 * GetRawsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRawsQAList, index)) ; }
46 virtual TH1 * GetSDigitsData(const Int_t /*index*/) { return NULL ; }
47 virtual TObjArray * Init(AliQA::TASKINDEX, Int_t run, Int_t cycles = -1) ;
48 virtual void Init(AliQA::TASKINDEX, TObjArray * list, Int_t run, Int_t cycles = -1) ;
49 virtual void StartOfCycle(AliQA::TASKINDEX, const Bool_t sameCycle = kFALSE) ;
50
51protected:
52
53 virtual void EndOfDetectorCycle(AliQA::TASKINDEX, TObjArray * ) {AliInfo("To be implemented by detectors");}
54 virtual void InitDigits() {AliFatal("Call not valid") ; }
55 virtual void InitESDs() {AliInfo("To be implemented by detectors");}
56 virtual void InitHits() {AliFatal("Call not valid") ; }
57 //virtual void InitRecParticles() {AliInfo("To be implemented by detectors");}
58 virtual void InitRecPoints() {AliInfo("To be implemented by detectors");}
59 virtual void InitRaws() {AliInfo("To be implemented by detectors");}
60 virtual void InitSDigits() {AliFatal("Call not valid") ; }
61 //virtual void InitTrackSegments() {AliInfo("To ne implemented by detectors");}
62 virtual void MakeESDs(AliESDEvent * ) {AliInfo("To be implemented by detectors");}
63 virtual void MakeHits(TClonesArray * ) {AliFatal("Call not valid") ; }
64 virtual void MakeHits(TTree * ) {AliFatal("Call not valid") ; }
65 virtual void MakeDigits(TClonesArray * ) {AliFatal("Call not valid") ; }
66 virtual void MakeDigits(TTree * ) {AliFatal("Call not valid") ; }
67 //virtual void MakeRecParticles(TClonesArray * ) {AliInfo("To be implemented by detectors");}
68 virtual void MakeRaws(AliRawReader *) {AliInfo("To be implemented by detectors");}
69 virtual void MakeRecPoints(TTree * ) {AliInfo("To be implemented by detectors");}
70 virtual void MakeSDigits(TClonesArray * ) {AliFatal("Call not valid") ; }
71 virtual void MakeSDigits(TTree * ) {AliFatal("Call not valid") ; }
72 virtual void StartOfDetectorCycle() {AliInfo("To be implemented by detectors");}
73
74 TObjArray * fESDsQAList ; //! list of the ESDs QA data objects
75 TObjArray * fRawsQAList ; //! list of the raws QA data objects
76 TObjArray * fRecPointsQAList ; //! list of the RecPoints QA data objects
77
78 ClassDef(AliQADataMakerRec,1) // description
79
80};
81
82#endif // AliQADataMakerRec_H