]>
Commit | Line | Data |
---|---|---|
7ab0e0a5 | 1 | #ifndef AliITSQASSDDATAMAKERREC_H |
2 | #define AliITSQASSDDATAMAKERREC_H | |
8c823e5a | 3 | /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
3647765c | 6 | /* $Id$ */ |
f91768e0 | 7 | |
8c823e5a | 8 | // |
9 | // Checks the quality assurance. | |
10 | // By comparing with reference data | |
11 | // contained in a DB | |
12 | // ------------------------------------------------------------- | |
13 | // W. Ferrarese + P. Cerello Feb 2008 | |
14 | // INFN Torino | |
15 | ||
4e25ac79 | 16 | #include "AliQAv1.h" |
f91768e0 | 17 | #include "AliQADataMakerRec.h" |
8c823e5a | 18 | |
f1b15b8d | 19 | class AliITSQADataMakerRec; |
8c823e5a | 20 | class TObjArray; |
92664bc8 | 21 | class TH1F; |
88128115 | 22 | |
8c823e5a | 23 | class AliRawReader; |
8c823e5a | 24 | class AliITSQADataMakerRec; |
88128115 | 25 | class AliCDBManager; |
8c823e5a | 26 | |
27 | class AliITSQASSDDataMakerRec: public TObject { | |
28 | ||
29 | public: | |
30 | AliITSQASSDDataMakerRec(AliITSQADataMakerRec *aliITSQADataMakerRec, Bool_t kMode = kFALSE, Int_t ldc=0); //ctor | |
e8c2bf0d | 31 | |
eca4fa66 | 32 | virtual Int_t InitRaws(); |
33 | virtual Int_t InitDigits(); | |
34 | virtual Int_t InitRecPoints(); | |
35 | virtual Int_t MakeRaws(AliRawReader *rawReader); | |
6252ceeb | 36 | virtual Int_t MakeDigits() {return 0;} |
eca4fa66 | 37 | virtual Int_t MakeDigits(TTree *digitsTree); |
38 | virtual Int_t MakeRecPoints(TTree *clustersTree); | |
8c823e5a | 39 | virtual void StartOfDetectorCycle(); |
92664bc8 | 40 | virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** /*list*/); |
f91768e0 | 41 | virtual ~AliITSQASSDDataMakerRec(); // dtor |
7a0e5776 | 42 | |
f1b15b8d | 43 | Int_t GetOffset(AliQAv1::TASKINDEX_t task,Int_t specie=0) const; |
8b7e858c | 44 | void SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset, Int_t specie = 0); |
4e25ac79 | 45 | Int_t GetTaskHisto(AliQAv1::TASKINDEX_t task); |
1b724264 | 46 | void ResetRawsMonitoredObjects(); |
5af1d436 | 47 | void ResetDetector(AliQAv1::TASKINDEX_t task); |
f91768e0 | 48 | private: |
8c823e5a | 49 | |
e8c2bf0d | 50 | AliITSQASSDDataMakerRec(const AliITSQASSDDataMakerRec& qadm); |
51 | AliITSQASSDDataMakerRec& operator = (const AliITSQASSDDataMakerRec& qac); | |
88128115 | 52 | void GetOccupancyStrip(TH1 *lHisto, Int_t *occupancyMatrix); |
0730893d | 53 | Double_t GetOccupancyModule(TH1 *lHisto, |
54 | Int_t stripside, | |
55 | Int_t mode, | |
56 | Double_t threshold); | |
92664bc8 | 57 | void MonitorOCDBObjects(Int_t trCl=-1); |
58 | void MonitorCMValues(Int_t trCl=-1); | |
88128115 | 59 | |
457717e4 | 60 | static const Int_t fgkNumOfLDCs = 8; //number of SSD LDCs |
f91768e0 | 61 | static const Int_t fgkNumOfDDLs = 16; //number of SSD DDLs |
8c823e5a | 62 | static const Int_t fgkSSDMODULES = 1698; //total number of SSD modules |
f91768e0 | 63 | static const Int_t fgkSSDLADDERSLAYER5 = 34; //ladders on layer 5 |
64 | static const Int_t fgkSSDLADDERSLAYER6 = 38; //ladders on layer 6 | |
65 | static const Int_t fgkSSDMODULESPERLADDERLAYER5 = 22; //modules per ladder - layer 5 | |
66 | static const Int_t fgkSSDMODULESPERLADDERLAYER6 = 25; //modules per ladder - layer 6 | |
8c823e5a | 67 | static const Int_t fgkSSDMODULESLAYER5 = 748; //total number of SSD modules - layer5 |
68 | static const Int_t fgkSSDMODULESLAYER6 = 950; //total number of SSD modules - layer6 | |
f91768e0 | 69 | static const Int_t fgkNumberOfPSideStrips = 768; //number of P-side strips |
70 | ||
8c823e5a | 71 | AliITSQADataMakerRec *fAliITSQADataMakerRec; //pointer to the main ctor |
72 | Bool_t fkOnline; //online (1) or offline (0) use | |
73 | Int_t fLDC; //LDC number (0 for offline, 1 to 4 for online) | |
e85e993e | 74 | Int_t fSSDRawsOffset; //SSD raw data plot offset |
88128115 | 75 | Int_t fSSDRawsDAOffset; //SSD DA plot offset |
e85e993e | 76 | Int_t fSSDRawsCommonLevelOffset; //Raw data QA - top level offset - histos used both online and offline |
7a0e5776 | 77 | Int_t fSSDhRawsTask; //number of histo booked for the raws SSD task |
44ed7a66 | 78 | Int_t fSSDhDigitsTask; //number of histo booked for the recpoints SSD task |
7a0e5776 | 79 | Int_t fSSDhRecPointsTask; //number of histo booked for the recpoints SSD task |
8b7e858c | 80 | Int_t *fGenRawsOffset; //qachecking raws offset |
4a903927 | 81 | Int_t *fGenDigitsOffset; //qachecking recpoints offset |
8b7e858c | 82 | Int_t *fGenRecPointsOffset; //qachecking recpoints offset |
92664bc8 | 83 | TH1F *fHistSSDRawSignalModule[fgkSSDMODULES]; //raw signal vs strip number - SSD |
84 | TH1F *fHistSSDCMModule[2*fgkSSDMODULES]; //SSD common mode noise | |
e85e993e | 85 | Int_t fOccupancyMatrix[fgkSSDMODULES][2*fgkNumberOfPSideStrips]; //occupancy values per strip |
86 | ||
88128115 | 87 | AliCDBManager *fCDBManager; //CDB manager |
8c823e5a | 88 | |
4a903927 | 89 | ClassDef(AliITSQASSDDataMakerRec,7) // description |
8c823e5a | 90 | }; |
91 | ||
92 | #endif |