]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSQASDDDataMakerRec.h
Changes requested in report #61429: PID: Separating response functions from ESD ...
[u/mrichter/AliRoot.git] / ITS / AliITSQASDDDataMakerRec.h
CommitLineData
ebdd0606 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 */
5
6//
7// Checks the quality assurance.
8// By comparing with reference data
9// contained in a DB
10//
11//
12// W. Ferrarese + P. Cerello Feb 2008
13
14/* $Id$ */
15
4e25ac79 16#include "AliQAv1.h"
ebdd0606 17#include "AliITSQADataMakerRec.h"
18
19class TObjArray;
20class AliITSDDLModuleMapSDD;
ebdd0606 21class AliITSQASDDDataMakerRec: public TObject {
22
23public:
24 AliITSQASDDDataMakerRec(AliITSQADataMakerRec *aliITSQADataMakerRec, Bool_t kMode = kFALSE, Short_t ldc = 0);
25 AliITSQASDDDataMakerRec(const AliITSQASDDDataMakerRec& qadm);
26 AliITSQASDDDataMakerRec& operator = (const AliITSQASDDDataMakerRec& qac);
eca4fa66 27 virtual Int_t InitRaws();
28 virtual Int_t InitDigits();
29 virtual Int_t InitRecPoints();
30 virtual Int_t MakeRaws(AliRawReader *rawReader);
6252ceeb 31 virtual Int_t MakeDigits() {return 0;}
eca4fa66 32 virtual Int_t MakeDigits(TTree *clustersTree);
33 virtual Int_t MakeRecPoints(TTree *clustersTree);
ebdd0606 34 virtual void StartOfDetectorCycle();
4e25ac79 35 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray * list);
58ceb8ca 36 virtual void CreateTheMap();
e41192d7 37
ebdd0606 38 virtual ~AliITSQASDDDataMakerRec(); // dtor
80b9610c 39 Int_t GetOffset(AliQAv1::TASKINDEX_t task,Int_t specie=0);
8b7e858c 40 void SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset, Int_t specie = 0);
4e25ac79 41 Int_t GetTaskHisto(AliQAv1::TASKINDEX_t task);
ebdd0606 42
58ceb8ca 43
ebdd0606 44private:
45
8b7e858c 46 void AnalyseBNG(); // Analyse ROOT files with baselines, noise, gains
47 void AnalyseINJ(); // Analyse ROOT files with drift speed
48 void AnodeStatus(); // Check Anode Status changes (0 = bad, 1 = good)
49 void AnalyseHistos(Int_t type); // Analyse Histos type: 1 = Baseline, 2 = Noise (Uncorrected), 3 = Noise (Common Mode), 4 = Noise (Corrected), 5 = Gain, 6 = Drift Speed
e41192d7 50 static const Int_t fgknSDDmodules = 260; // number of SDD modules
51 static const Int_t fgkmodoffset = 240; // number of SPD modules
52 static const Int_t fgknAnode = 256; // anode per half-module
53 static const Int_t fgknSide =2; // side per module
58ceb8ca 54 //static const Int_t fgkDDLIDshift = 0; // necessary option until RawStream Table is complete
e41192d7 55 static const Int_t fgkLADDonLAY3 = 14; // number of ladder on layer 3
56 static const Int_t fgkLADDonLAY4 = 22; // number of ladder on layer 4
ebdd0606 57
e41192d7 58 AliITSQADataMakerRec *fAliITSQADataMakerRec;// pointer to the main ctor
59 Bool_t fkOnline; // online (1) or offline (0) use
60 Int_t fLDC; // LDC number (0 for offline, 1 to 4 for online)
ad300de9 61 Int_t fSDDhRawsTask; // number of histo booked for each the Raws Task SDD
44ed7a66 62 Int_t fSDDhDigitsTask; // number of histo booked for each the RecPoints Task SDD
ad300de9 63 Int_t fSDDhRecPointsTask; // number of histo booked for each the RecPoints Task SDD
8b7e858c 64 Int_t *fGenRawsOffset; // QAchecking Raws offset
4a903927 65 Int_t *fGenDigitsOffset; // QAchecking RecPoints offset
8b7e858c 66 Int_t *fGenRecPointsOffset; // QAchecking RecPoints offset
e41192d7 67 Int_t fTimeBinSize; // time bin width in number of clocks
68 AliITSDDLModuleMapSDD *fDDLModuleMap; // SDD Detector configuration for the decoding
8b7e858c 69
58ceb8ca 70 Bool_t fkAnodeMap[fgknSDDmodules][fgknSide][fgknAnode]; // Array of anode status 1 = ok, 0 = bad
8b7e858c 71 Int_t fGoodAnodes;
72 Int_t fBadAnodes;
73 Int_t fGoodAnodesCurrent;
74 Int_t fBadAnodesCurrent;
58ceb8ca 75
76
77
78 ClassDef(AliITSQASDDDataMakerRec,10) // description
ebdd0606 79
80};
81
82#endif
83