Added two missing includes to allow macro compilation (thanks to Laurent for remarkin...
[u/mrichter/AliRoot.git] / ITS / AliITSQASSDDataMakerRec.h
CommitLineData
8c823e5a 1#ifndef AliITSQASSDDataMakerRec_H
2#define AliITSQASSDDataMakerRec_H
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"
8c823e5a 17#include "AliITSQADataMakerRec.h"
f91768e0 18#include "AliQADataMakerRec.h"
8c823e5a 19
20class TObjArray;
21class TH1D;
88128115 22
8c823e5a 23class AliRawReader;
8c823e5a 24class AliITSQADataMakerRec;
88128115 25class AliCDBManager;
8c823e5a 26
27class AliITSQASSDDataMakerRec: public TObject {
28
29public:
30 AliITSQASSDDataMakerRec(AliITSQADataMakerRec *aliITSQADataMakerRec, Bool_t kMode = kFALSE, Int_t ldc=0); //ctor
31 AliITSQASSDDataMakerRec(const AliITSQASSDDataMakerRec& qadm);
32 AliITSQASSDDataMakerRec& operator = (const AliITSQASSDDataMakerRec& qac);
eca4fa66 33 virtual Int_t InitRaws();
34 virtual Int_t InitDigits();
35 virtual Int_t InitRecPoints();
36 virtual Int_t MakeRaws(AliRawReader *rawReader);
6252ceeb 37 virtual Int_t MakeDigits() {return 0;}
eca4fa66 38 virtual Int_t MakeDigits(TTree *digitsTree);
39 virtual Int_t MakeRecPoints(TTree *clustersTree);
8c823e5a 40 virtual void StartOfDetectorCycle();
1b724264 41 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray * /*list*/);
f91768e0 42 virtual ~AliITSQASSDDataMakerRec(); // dtor
7a0e5776 43
4e25ac79 44 Int_t GetOffset(AliQAv1::TASKINDEX_t task);
8b7e858c 45 void SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset, Int_t specie = 0);
4e25ac79 46 Int_t GetTaskHisto(AliQAv1::TASKINDEX_t task);
1b724264 47 void ResetRawsMonitoredObjects();
8c823e5a 48
f91768e0 49 private:
8c823e5a 50
88128115 51 void GetOccupancyStrip(TH1 *lHisto, Int_t *occupancyMatrix);
0730893d 52 Double_t GetOccupancyModule(TH1 *lHisto,
53 Int_t stripside,
54 Int_t mode,
55 Double_t threshold);
88128115 56 void MonitorOCDBObjects();
f7b4c081 57 void MonitorCMValues();
88128115 58
457717e4 59 static const Int_t fgkNumOfLDCs = 8; //number of SSD LDCs
f91768e0 60 static const Int_t fgkNumOfDDLs = 16; //number of SSD DDLs
8c823e5a 61 static const Int_t fgkSSDMODULES = 1698; //total number of SSD modules
f91768e0 62 static const Int_t fgkSSDLADDERSLAYER5 = 34; //ladders on layer 5
63 static const Int_t fgkSSDLADDERSLAYER6 = 38; //ladders on layer 6
64 static const Int_t fgkSSDMODULESPERLADDERLAYER5 = 22; //modules per ladder - layer 5
65 static const Int_t fgkSSDMODULESPERLADDERLAYER6 = 25; //modules per ladder - layer 6
8c823e5a 66 static const Int_t fgkSSDMODULESLAYER5 = 748; //total number of SSD modules - layer5
67 static const Int_t fgkSSDMODULESLAYER6 = 950; //total number of SSD modules - layer6
f91768e0 68 static const Int_t fgkNumberOfPSideStrips = 768; //number of P-side strips
69
8c823e5a 70 AliITSQADataMakerRec *fAliITSQADataMakerRec; //pointer to the main ctor
e85e993e 71 Int_t fSSDEvent; //event counter
72 Int_t fSSDEventPerCycle; //event counter per cycle
8c823e5a 73 Bool_t fkOnline; //online (1) or offline (0) use
74 Int_t fLDC; //LDC number (0 for offline, 1 to 4 for online)
e85e993e 75 Int_t fSSDRawsOffset; //SSD raw data plot offset
88128115 76 Int_t fSSDRawsDAOffset; //SSD DA plot offset
e85e993e 77 Int_t fSSDRawsCommonLevelOffset; //Raw data QA - top level offset - histos used both online and offline
7a0e5776 78 Int_t fSSDhRawsTask; //number of histo booked for the raws SSD task
44ed7a66 79 Int_t fSSDhDigitsTask; //number of histo booked for the recpoints SSD task
7a0e5776 80 Int_t fSSDhRecPointsTask; //number of histo booked for the recpoints SSD task
8b7e858c 81 Int_t *fGenRawsOffset; //qachecking raws offset
4a903927 82 Int_t *fGenDigitsOffset; //qachecking recpoints offset
8b7e858c 83 Int_t *fGenRecPointsOffset; //qachecking recpoints offset
e85e993e 84 TH1D *fHistSSDRawSignalModule[fgkSSDMODULES]; //raw signal vs strip number - SSD
f7b4c081 85 TH1D *fHistSSDCMModule[2*fgkSSDMODULES]; //SSD common mode noise
e85e993e 86 Int_t fOccupancyMatrix[fgkSSDMODULES][2*fgkNumberOfPSideStrips]; //occupancy values per strip
87
88128115 88 AliCDBManager *fCDBManager; //CDB manager
8c823e5a 89
4a903927 90 ClassDef(AliITSQASSDDataMakerRec,7) // description
8c823e5a 91};
92
93#endif