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 */
11 // Checks the quality assurance.
12 // By comparing with reference data
16 // W. Ferrarese + P. Cerello Feb 2008
18 // ESD QA (Tracking and primary vertex)
19 // A. Dainese Jun 2008
21 #include "AliQADataMakerRec.h"
22 #include "AliDetectorRecoParam.h"
23 #include "AliReconstructor.h"
24 #include "AliITSDDLModuleMapSDD.h"
26 class AliITSQASPDDataMakerRec;
27 class AliITSQASDDDataMakerRec;
28 class AliITSQASSDDataMakerRec;
32 //class AliITSDDLModuleMapSDD;
34 class AliITSQADataMakerRec: public AliQADataMakerRec {
36 friend class AliITSQASPDDataMakerRec;
37 friend class AliITSQASDDDataMakerRec;
38 friend class AliITSQASSDDataMakerRec;
41 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)
42 AliITSQADataMakerRec(const AliITSQADataMakerRec& qadm);
43 AliITSQADataMakerRec& operator = (const AliITSQADataMakerRec& qac);
44 virtual Int_t GetEventSpecie() const { return AliRecoParam::AConvert(fEventSpecie); }
45 virtual void StartOfDetectorCycle();
46 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list);
47 virtual void EndOfDetectorCycle(const char *fgDataName);
48 virtual void InitRaws();
49 virtual void InitDigits();
50 virtual void InitRecPoints();
51 virtual void InitESDs();
52 virtual void MakeRaws(AliRawReader *rawReader);
53 virtual void MakeDigits(){AliWarning("Signature not implemented. A TTree* of digits should be passed as input argument");}
54 virtual void MakeDigits(TTree *digitsTree);
55 virtual void MakeRecPoints(TTree *clustersTree);
56 virtual void MakeESDs(AliESDEvent *esd);
57 virtual void FillRecPoint(AliITSRecPoint rcp);
59 virtual void ResetDetector(AliQAv1::TASKINDEX_t task);
61 virtual ~AliITSQADataMakerRec(); // dtor
62 Short_t GetSubDet(){return fSubDetector;};
63 Int_t GetDetTaskOffset(Int_t subdet,AliQAv1::TASKINDEX_t task,Int_t specie=0);
64 Int_t GetDetTaskHisto(Int_t subdet,AliQAv1::TASKINDEX_t task);
65 TH2F *GetITSGlobalHisto(Int_t layer);
66 static Bool_t AreEqual(Double_t a1, Double_t a2);
68 virtual void SetRunNumber(Int_t runnumber){fRunNumber=runnumber;};
69 Int_t GetRunNumber(){return fRunNumber;};
71 virtual void SetEventNumber(Int_t eventnumber){fEventNumber=eventnumber;};
72 Int_t GetEventNumber() const {return fEventNumber;};
73 AliITSDDLModuleMapSDD *GetDDLSDDModuleMap();
77 Bool_t fkOnline; //online (1) or offline (0) use
78 Short_t fSubDetector; // subDetector: 0 (ALL), 1 (SPD), 2 (SDD), 3 (SSD)
79 Short_t fLDC; // number of LDC: 0 (one LDC for the whole subdetector)
80 Int_t fRunNumber; //run number
81 Int_t fEventNumber; //Event number (online mode)
83 AliITSQASPDDataMakerRec *fSPDDataMaker; // SPD Data Maker
84 AliITSQASDDDataMakerRec *fSDDDataMaker; // SDD Data Maker
85 AliITSQASSDDataMakerRec *fSSDDataMaker; // SSD Data Maker
87 ClassDef(AliITSQADataMakerRec,7) // description