]>
Commit | Line | Data |
---|---|---|
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 | 16 | class TNtupleD ; |
04236e67 | 17 | // --- Standard library --- |
18 | ||
19 | // --- AliRoot header files --- | |
fb6e511e | 20 | class AliDetectorRecoParam ; |
04236e67 | 21 | #include "AliQADataMaker.h" |
4e25ac79 | 22 | #include "AliQAv1.h" |
04236e67 | 23 | |
24 | class AliQADataMakerRec: public AliQADataMaker { | |
25 | ||
26 | public: | |
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) |
eca4fa66 | 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) | |
44ed7a66 | 36 | { return Add2List(hist, index, fESDsQAList, expert, image) ; } |
eca4fa66 | 37 | virtual Int_t Add2HitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/) |
44ed7a66 | 38 | { return -1 ; } |
eca4fa66 | 39 | virtual Int_t Add2RecPointsList(TH1 * hist, const Int_t index, const Bool_t expert = kFALSE, const Bool_t image = kFALSE) |
44ed7a66 | 40 | { return Add2List(hist, index, fRecPointsQAList, expert, image) ; } |
eca4fa66 | 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) ; } | |
43 | virtual Int_t Add2SDigitsList(TH1 * /*hist*/, const Int_t /*index*/, const Bool_t /*expert = kFALSE*/, const Bool_t /*image = kFALSE*/) { return -1 ; } | |
44 | ||
45 | virtual void Exec(AliQAv1::TASKINDEX_t task, TObject * data) ; | |
930e6e3e | 46 | virtual void EndOfCycle() ; |
4e25ac79 | 47 | virtual void EndOfCycle(AliQAv1::TASKINDEX_t task) ; |
48 | virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray ** ) {AliInfo("To be implemented by detectors");} | |
44ed7a66 | 49 | virtual TH1 * GetDigitsData(const Int_t index ) { return dynamic_cast<TH1 *>(GetData(fDigitsQAList, index)) ; } |
57acd2d2 | 50 | virtual TH1 * GetESDsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fESDsQAList, index)) ; } |
51 | virtual TH1 * GetHitsData(const Int_t /*index*/) { return NULL ; } | |
2b261f20 | 52 | virtual const AliDetectorRecoParam * GetRecoParam() { return fRecoParam ; } |
6252ceeb | 53 | |
57acd2d2 | 54 | virtual TH1 * GetRecPointsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRecPointsQAList, index)) ; } |
55 | virtual TH1 * GetRawsData(const Int_t index) { return dynamic_cast<TH1 *>(GetData(fRawsQAList, index)) ; } | |
04236e67 | 56 | virtual TH1 * GetSDigitsData(const Int_t /*index*/) { return NULL ; } |
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) ; | |
1b3c3bfc | 59 | virtual void InitRaws() {AliInfo("To be implemented by detectors");} |
4c2c255c | 60 | virtual void InitRecPoints() {AliInfo("To be implemented by detectors");} |
1b3c3bfc | 61 | virtual void InitDigits() {AliInfo("To be implemented by detectors");} |
62 | virtual void InitESDs() {AliInfo("To be implemented by detectors");} | |
9ac91920 | 63 | virtual void ResetDetector(AliQAv1::TASKINDEX_t task) ; |
930e6e3e | 64 | virtual void StartOfCycle(Int_t run = -1) ; |
4e25ac79 | 65 | virtual void StartOfCycle(AliQAv1::TASKINDEX_t task, Int_t run, const Bool_t sameCycle = kFALSE) ; |
a2b64fbd | 66 | virtual void SetRecoParam(const AliDetectorRecoParam *param) { fRecoParam = param; } |
b8bd1ab8 | 67 | |
04236e67 | 68 | protected: |
69 | ||
fb6e511e | 70 | virtual void InitRecoParams() ; |
edf10d5d | 71 | virtual void InitHits() {AliWarning("Call not valid") ; } |
04236e67 | 72 | //virtual void InitRecParticles() {AliInfo("To be implemented by detectors");} |
edf10d5d | 73 | virtual void InitSDigits() {AliWarning("Call not valid") ; } |
04236e67 | 74 | //virtual void InitTrackSegments() {AliInfo("To ne implemented by detectors");} |
75 | virtual void MakeESDs(AliESDEvent * ) {AliInfo("To be implemented by detectors");} | |
6252ceeb | 76 | virtual void MakeHits() {AliWarning("Call not valid") ; } |
edf10d5d | 77 | virtual void MakeHits(TTree * ) {AliWarning("Call not valid") ; } |
6252ceeb | 78 | virtual void MakeDigits() {AliInfo("To be implemented by detectors");} |
44ed7a66 | 79 | virtual void MakeDigits(TTree * ) {AliInfo("To be implemented by detectors");} |
6252ceeb | 80 | //virtual void MakeRecParticles() {AliInfo("To be implemented by detectors");} |
04236e67 | 81 | virtual void MakeRaws(AliRawReader *) {AliInfo("To be implemented by detectors");} |
82 | virtual void MakeRecPoints(TTree * ) {AliInfo("To be implemented by detectors");} | |
6252ceeb | 83 | virtual void MakeSDigits() {AliWarning("Call not valid") ; } |
edf10d5d | 84 | virtual void MakeSDigits(TTree * ) {AliWarning("Call not valid") ; } |
04236e67 | 85 | virtual void StartOfDetectorCycle() {AliInfo("To be implemented by detectors");} |
86 | ||
eca4fa66 | 87 | TObjArray * * fDigitsQAList ; //! list of the digits QA data objects |
88 | TObjArray * * fESDsQAList ; //! list of the ESDs QA data objects | |
89 | TObjArray * * fRawsQAList ; //! list of the raws QA data objects | |
90 | TObjArray * * fRecPointsQAList ; //! list of the RecPoints QA data objects | |
6252ceeb | 91 | TNtupleD ** fCorrNt ; //! This is used by Corr only to hold its Ntuple. |
eca4fa66 | 92 | const AliDetectorRecoParam *fRecoParam; //! const pointer to the reco parameters to be used in the reco QA |
6252ceeb | 93 | TClonesArray * fRecPointsArray; //! Array that contains the RecPoints |
04236e67 | 94 | |
eca4fa66 | 95 | ClassDef(AliQADataMakerRec,4) // description |
04236e67 | 96 | |
97 | }; | |
98 | ||
202374b1 | 99 | #endif // ALIQADATAMAKERREC_H |