1 #ifndef ALIITSQASDDDATAMAKERREC_H
2 #define ALIITSQASDDDATAMAKERREC_H
3 /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
7 // Checks the quality assurance.
8 // By comparing with reference data
12 // W. Ferrarese + P. Cerello Feb 2008
18 class AliITSQADataMakerRec;
19 class AliITSCalibrationSDD;
21 class AliITSDDLModuleMapSDD;
24 class AliITSQASDDDataMakerRec: public TObject {
27 AliITSQASDDDataMakerRec(AliITSQADataMakerRec *aliITSQADataMakerRec, Bool_t kMode = kFALSE, Short_t ldc = 0);
28 AliITSQASDDDataMakerRec(const AliITSQASDDDataMakerRec& qadm);
29 AliITSQASDDDataMakerRec& operator = (const AliITSQASDDDataMakerRec& qac);
30 virtual Int_t InitRaws();
31 virtual Int_t InitDigits();
32 virtual Int_t InitRecPoints();
33 virtual Int_t MakeRaws(AliRawReader *rawReader);
34 virtual Int_t MakeDigits() {return 0;}
35 virtual Int_t MakeDigits(TTree *clustersTree);
36 virtual Int_t MakeRecPoints(TTree *clustersTree);
37 virtual void StartOfDetectorCycle();
38 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list);
39 virtual void CreateTheMap();
40 virtual void CreateTheCalibration();
41 virtual void InitCalibrationArray();
43 virtual ~AliITSQASDDDataMakerRec(); // dtor
44 Int_t GetOffset(AliQAv1::TASKINDEX_t task,Int_t specie=0)const;
45 void SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset, Int_t specie = 0);
46 Int_t GetTaskHisto(AliQAv1::TASKINDEX_t task);
47 Int_t GetNumberOfEvents(AliQAv1::TASKINDEX_t task, Int_t trigCl=-1);
48 virtual void ResetDetector(AliQAv1::TASKINDEX_t task);
49 AliITSDDLModuleMapSDD* GetDDLSDDModuleMap()const{return fDDLModuleMap; };
53 static const Int_t fgknSDDmodules = 260; // number of SDD modules
54 static const Int_t fgkmodoffset = 240; // number of SPD modules
55 static const Int_t fgknAnode = 256; // anode per half-module
56 static const Int_t fgknSide =2; // side per module
57 //static const Int_t fgkDDLIDshift = 0; // necessary option until RawStream Table is complete
58 static const Int_t fgkLADDonLAY3 = 14; // number of ladder on layer 3
59 static const Int_t fgkLADDonLAY4 = 22; // number of ladder on layer 4
60 static const Int_t fgkTotalNumberSDDAnodes = 512; //total number of the anodes of a SDD modules
61 static const Int_t fgkNumberOfSDDAnodesperSide =256; //number of the anodes of an half SDD modules
63 AliITSQADataMakerRec *fAliITSQADataMakerRec; // pointer to the main ctor
64 Bool_t fkOnline; // online (1) or offline (0) use
65 Int_t fLDC; // LDC number (0 for offline, 1 to 4 for online)
66 Int_t fSDDhRawsTask; // number of histo booked for each the Raws Task SDD
67 Int_t fSDDhDigitsTask; // number of histo booked for each the RecPoints Task SDD
68 Int_t fSDDhRecPointsTask; // number of histo booked for each the RecPoints Task SDD
69 Int_t fOnlineOffsetRaws; // index for starting online histograms for Raws
70 Int_t fOnlineOffsetRecPoints; // index for starting online histograms for RecPoints
71 Int_t *fGenRawsOffset; // QAchecking Raws offset
72 Int_t *fGenDigitsOffset; // QAchecking RecPoints offset
73 Int_t *fGenRecPointsOffset; // QAchecking RecPoints offset
74 Int_t fTimeBinSize; // time bin width in number of clocks
75 AliITSDDLModuleMapSDD *fDDLModuleMap; // SDD Detector configuration for the decoding
76 TObjArray *fCalibration; //Array of Calibration Object
77 TObjArray *fHistoCalibration; //Array of the Calibration histograms for the normalization
79 ClassDef(AliITSQASDDDataMakerRec,13) // description