Line data Source code
1 : #ifndef ALIITSQADATAMAKERREC_H
2 : #define ALIITSQADATAMAKERREC_H
3 : /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 :
7 : /* $Id$ */
8 :
9 :
10 : //
11 : // Checks the quality assurance.
12 : // By comparing with reference data
13 : // contained in a DB
14 : //
15 : //
16 : // W. Ferrarese + P. Cerello Feb 2008
17 : //
18 : // ESD QA (Tracking and primary vertex)
19 : // A. Dainese Jun 2008
20 :
21 : #include "AliQADataMakerRec.h"
22 : #include "AliITSRecPoint.h"
23 :
24 : class AliDetectorRecoParam;
25 : class AliReconstructor;
26 : //#include "AliITSDDLModuleMapSDD.h"
27 :
28 : class AliQAManager;
29 : class AliITSQASPDDataMakerRec;
30 : class AliITSQASDDDataMakerRec;
31 : class AliITSQASSDDataMakerRec;
32 : class AliRawReader;
33 : class TH2F;
34 : class AliITSDDLModuleMapSDD;
35 :
36 : class AliITSQADataMakerRec: public AliQADataMakerRec {
37 :
38 : friend class AliITSQASPDDataMakerRec; //friend class of SPD QA
39 : friend class AliITSQASDDDataMakerRec; //friend class of SDD QA
40 : friend class AliITSQASSDDataMakerRec; //friend class of SSD QA
41 :
42 : public:
43 : AliITSQADataMakerRec(Bool_t kMode = kFALSE, Short_t subDet = 0, Short_t ldc = 0); // kMode = kFALSE (offline), kTRUE (online); subDet = 0 (ALL), 1 (SPD), 2 (SDD), 3 (SSD)
44 : AliITSQADataMakerRec(const AliITSQADataMakerRec& qadm);
45 : AliITSQADataMakerRec& operator = (const AliITSQADataMakerRec& qac);
46 0 : virtual Int_t GetEventSpecie() const { return AliRecoParam::AConvert(fEventSpecie); }
47 : virtual void StartOfDetectorCycle();
48 : virtual void StartOfCycle(AliQAv1::TASKINDEX_t task, Int_t run, const Bool_t sameCycle = kFALSE) ;
49 0 : virtual void StartOfCycle(Int_t run){AliQADataMakerRec::StartOfCycle(run);}
50 : virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list);
51 : // virtual void EndOfDetectorCycle(const char *fgDataName);
52 : virtual void InitRaws();
53 : virtual void InitDigits();
54 : virtual void InitRecPoints();
55 : virtual void InitESDs();
56 : virtual void MakeRaws(AliRawReader *rawReader);
57 0 : virtual void MakeDigits(){AliWarning("Signature not implemented. A TTree* of digits should be passed as input argument");}
58 : virtual void MakeDigits(TTree *digitsTree);
59 : virtual void MakeRecPoints(TTree *clustersTree);
60 : virtual void MakeESDs(AliESDEvent *esd);
61 : virtual void FillRecPoint(AliITSRecPoint rcp);
62 : virtual Bool_t ListExists(AliQAv1::TASKINDEX_t task) const;
63 0 : AliQAv1::TASKINDEX_t GetTaskIndexSelected() const {return fSelectedTaskIndex;}
64 :
65 : virtual void ResetDetector(AliQAv1::TASKINDEX_t task);
66 :
67 : virtual ~AliITSQADataMakerRec(); // dtor
68 0 : Short_t GetSubDet()const {return fSubDetector;};
69 : Int_t GetDetTaskOffset(Int_t subdet,AliQAv1::TASKINDEX_t task,Int_t specie=0);
70 : Int_t GetDetTaskHisto(Int_t subdet,AliQAv1::TASKINDEX_t task);
71 : TH2F *GetITSGlobalHisto(Int_t layer);
72 : static Bool_t AreEqual(Double_t a1, Double_t a2);
73 :
74 0 : virtual void SetRunNumber(Int_t runnumber){fRunNumber=runnumber;};
75 0 : Int_t GetRunNumber()const {return fRunNumber;};
76 :
77 0 : virtual void SetEventNumber(Int_t eventnumber){fEventNumber=eventnumber;};
78 0 : Int_t GetEventNumber() const {return fEventNumber;};
79 : AliITSDDLModuleMapSDD *GetDDLSDDModuleMap();
80 :
81 : private:
82 :
83 : Bool_t fkOnline; //online (1) or offline (0) use
84 : Short_t fSubDetector; // subDetector: 0 (ALL), 1 (SPD), 2 (SDD), 3 (SSD)
85 : Short_t fLDC; // number of LDC: 0 (one LDC for the whole subdetector)
86 : Int_t fRunNumber; //run number
87 : Int_t fEventNumber; //Event number (online mode)
88 : AliQAv1::TASKINDEX_t fSelectedTaskIndex; //Current TaskIndex
89 :
90 : AliITSQASPDDataMakerRec *fSPDDataMaker; // SPD Data Maker
91 : AliITSQASDDDataMakerRec *fSDDDataMaker; // SDD Data Maker
92 : AliITSQASSDDataMakerRec *fSSDDataMaker; // SSD Data Maker
93 :
94 130 : ClassDef(AliITSQADataMakerRec,8) // description
95 :
96 : };
97 :
98 : #endif
99 :
|