]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSQASDDChecker.h
New checker for SDD (Piergiorgio - Melinda)
[u/mrichter/AliRoot.git] / ITS / AliITSQASDDChecker.h
1 #ifndef ALIITSQASDDCHECKER_H
2 #define ALIITSQASDDCHECKER_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 //  Checks the quality assurance. 
11 //  By comparing with reference data
12 //  INFN Torino
13 //  P. Cerello - apr 2008
14 //
15
16 #include "AliQAv1.h"
17 // --- ROOT system ---
18 class TFile;
19 class TH2F; 
20
21 // --- AliRoot header files ---
22
23 class AliQACheckerBase;
24 class AliITSQAChecker;
25 class AliITSCalibrationSDD;
26 class AliITSLoader;
27 class TSystem;
28 class AliQAManager;
29 class AliLog;
30 class TF1;
31 class TCanvas;
32
33 class AliITSQASDDChecker: public TObject {
34
35 public:
36   AliITSQASDDChecker():
37         fSubDetOffset(0),
38         fStepBitSDD(NULL),
39         fLowSDDValue(NULL),
40         fHighSDDValue(NULL),
41         fCalibration(NULL),
42         fRawL3Pattern(NULL),
43         fRawL4Pattern(NULL),
44         fRecL3Pattern(NULL),
45         fRecL4Pattern(NULL),
46         fThresholdForRelativeOccupancy(0.01),
47         fRawModulePattern(NULL),
48         fRecModulePattern(NULL),
49         fModulePatternRatio(NULL),
50         fThresholdForRecToRawRatio(0.04) 
51         {;}          // ctor
52   AliITSQASDDChecker& operator = (const AliITSQASDDChecker& qac) ; //operator =
53   virtual ~AliITSQASDDChecker(); // dtor
54   virtual Double_t Check(AliQAv1::ALITASK_t index, const TObjArray * list, const AliDetectorRecoParam * recoParam);
55   virtual void SetTaskOffset(Int_t taskoffset);
56   virtual void SetStepBit(const Double_t *steprange);
57   virtual Double_t *GetStepBit(){return fStepBitSDD;};
58   virtual void SetSDDLimits(const Float_t *lowvalue, const Float_t * highvalue);
59 private:
60   AliITSQASDDChecker(const AliITSQASDDChecker& qac):TObject(),
61         fSubDetOffset(qac.fSubDetOffset),
62         fStepBitSDD(qac.fStepBitSDD),
63         fLowSDDValue(qac.fLowSDDValue),
64         fHighSDDValue(qac.fHighSDDValue),
65         fCalibration(qac.fCalibration),
66         fRawL3Pattern(qac.fRawL3Pattern),
67         fRawL4Pattern(qac.fRawL4Pattern),
68         fRecL3Pattern(qac.fRecL3Pattern),
69         fRecL4Pattern(qac.fRecL4Pattern),
70         fThresholdForRelativeOccupancy(qac.fThresholdForRelativeOccupancy),
71         fRawModulePattern(qac.fRawModulePattern),
72         fRecModulePattern(qac.fRecModulePattern),
73         fModulePatternRatio(qac.fModulePatternRatio),
74         fThresholdForRecToRawRatio(qac.fThresholdForRecToRawRatio) 
75         {;} // cpy ctor   
76   Int_t fSubDetOffset;            // checking operation starting point
77   Double_t *fStepBitSDD;          //step size for each QAbit(kINFO, kWARNING,kERROR,kFATAL)
78   Float_t *fLowSDDValue;          //low value of each QA bit range 
79   Float_t *fHighSDDValue;         //High value of each QA bit range
80   TObjArray *fCalibration;        //TObjArray with Calibration SDD Objects
81         
82         TH2F *fRawL3Pattern;            // distribution of Raw Module Counts for L3
83         TH2F *fRawL4Pattern;            // distribution of Raw Module Counts for L4
84         TH2F *fRecL3Pattern;            // distribution of Rec Module Counts for L3
85         TH2F *fRecL4Pattern;            // distribution of Rec Module Counts for L4
86         Float_t fThresholdForRelativeOccupancy;  // ThresholdForRelativeOccupancy (by module)
87         TH1F *fRawModulePattern;        // distribution of Raw Module Counts
88         TH1F *fRecModulePattern;        // distribution of Rec Module Counts
89         TH1F *fModulePatternRatio;      // distribution of Rec/Raw Module Counts
90         Float_t fThresholdForRecToRawRatio; // ThresholdForRecToRawRatio (by module)
91
92   static const Int_t fgknSDDmodules = 260; // number of SDD modules
93   static const Int_t fgkmodoffset = 240;   // number of SPD modules
94   ClassDef(AliITSQASDDChecker,3)  // description 
95
96 };
97
98 #endif // AliITSQASDDChecker_H