]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/AliTPCdataQA.h
Adding QA makers for digits (Marian)
[u/mrichter/AliRoot.git] / TPC / AliTPCdataQA.h
CommitLineData
0ffacf98 1#ifndef ALITPCDATAQA_H
2#define ALITPCDATAQA_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7
8#include <TObject.h>
9#include <TObjArray.h>
10
11class TArrayF;
12class TH2F;
13class TTreeSRedirector;
14class AliTPCROC;
15class AliTPCCalROC;
16class AliTPCRawStream;
17class AliTPCRawStreamFast;
18class AliRawReader;
19class AliTPCAltroMapping;
20class AliTPCCalPad;
21struct eventHeaderStruct;
22
23class AliTPCdataQA : public TObject {
24
25public:
26 AliTPCdataQA();
27 AliTPCdataQA(const AliTPCdataQA &ped);
28 virtual ~AliTPCdataQA();
29
30 AliTPCdataQA& operator = (const AliTPCdataQA &source);
31 void DumpToFile(const Char_t *filename, const Char_t *dir="", const Bool_t append=kFALSE);
32 //
33 Bool_t ProcessEventFast(AliTPCRawStreamFast *rawStreamFast);
34 Bool_t ProcessEventFast(AliRawReader *rawReader);
35 Bool_t ProcessEvent(AliTPCRawStream *rawStream);
36 Bool_t ProcessEvent(AliRawReader *rawReader);
37 Bool_t ProcessEvent(eventHeaderStruct *event);
38
39 Int_t Update(const Int_t isector, const Int_t iRow, const Int_t iPad,
40 const Int_t iTimeBin, const Float_t signal);
41 void Analyse();
42 //
43 //
44 AliTPCCalPad *GetMaxCharge(){ return fMaxCharge;}
45 AliTPCCalPad *GetOverThreshold0(){ return fOverThreshold0;}
46 AliTPCCalPad *GetOverThreshold5(){ return fOverThreshold5;}
47 AliTPCCalPad *GetOverThreshold10(){ return fOverThreshold10;}
48 AliTPCCalPad *GetOverThreshold20(){ return fOverThreshold20;}
49 AliTPCCalPad *GetOverThreshold30(){ return fOverThreshold30;}
50
51 //
52 AliTPCAltroMapping **GetAltroMapping() { return fMapping; };
53 void SetAltroMapping(AliTPCAltroMapping **mapp) { fMapping = mapp; };
54 //
55 //
56 Int_t GetFirstTimeBin() const { return fFirstTimeBin; }
57 Int_t GetLastTimeBin() const { return fLastTimeBin; }
58 Int_t GetAdcMin() const { return fAdcMin; }
59 Int_t GetAdcMax() const { return fAdcMax; }
60 void SetRangeTime(Int_t tMin, Int_t tMax){ fFirstTimeBin=tMin; fLastTimeBin=tMax; } // Set time bin range that is used for the pedestal calibration
61 void SetRangeAdc (Int_t aMin, Int_t aMax){ fAdcMin=aMin; fAdcMax=aMax; } // Set adc range for the pedestal calibration
62
63 void SetOldRCUformat(Bool_t format=kTRUE) { fOldRCUformat = format; }
64
65
66private:
67
68 Int_t fFirstTimeBin; // First Time bin needed for analysis
69 Int_t fLastTimeBin; // Last Time bin needed for analysis
70 Int_t fAdcMin; // min adc channel of pedestal value
71 Int_t fAdcMax; // max adc channel of pedestal value
72 Bool_t fOldRCUformat; //! Should we use the old RCU format for data reading
73
74 AliTPCROC *fROC; //! ROC information
75 AliTPCAltroMapping **fMapping; //! Altro Mapping object
76 //
77 //
78 AliTPCCalPad * fMaxCharge; // max charge
79 AliTPCCalPad * fOverThreshold0; // number of digits over threshold
80 AliTPCCalPad * fOverThreshold5; // number of digits over threshold
81 AliTPCCalPad * fOverThreshold10; // number of digits over threshold
82 AliTPCCalPad * fOverThreshold20; // number of digits over threshold
83 AliTPCCalPad * fOverThreshold30; // number of digits over threshold
84 Int_t fEventCounter; // event Counter
85
86public:
87 ClassDef(AliTPCdataQA, 1) // Implementation of the TPC pedestal and noise calibration
88};
89
90
91
92#endif
93