]>
Commit | Line | Data |
---|---|---|
8bc7e885 | 1 | #ifndef ALITPCCALIBPEDESTAL_H |
2 | #define ALITPCCALIBPEDESTAL_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 | ||
9 | ||
10 | class TObjArray; | |
11 | class TH2F; | |
12 | class TH2S; | |
13 | class TH1S; | |
14 | class TH1F; | |
15 | class TH1D; | |
16 | class TF1; | |
17 | class TTreeSRedirector; | |
18 | class AliTPCROC; | |
19 | class AliRawReader; | |
20 | ||
21 | ||
22 | class AliTPCCalibPedestal : public TObject { | |
23 | ||
24 | public: | |
25 | AliTPCCalibPedestal(); | |
26 | virtual ~AliTPCCalibPedestal(); | |
27 | ||
28 | Bool_t ProcessEvent(AliRawReader *rawReader); | |
29 | Int_t Update(const Int_t isector, const Int_t iRow, const Int_t iPad, | |
30 | const Int_t iTimeBin, const Float_t signal); | |
31 | void Analyse(); | |
32 | // | |
33 | AliTPCCalROC* GetCalRocPedestal (Int_t sector, Bool_t force=kFALSE); //get calibration object - sector | |
34 | AliTPCCalROC* GetCalRocRMS(Int_t sector, Bool_t force=kFALSE); //get calibration object - sector | |
35 | const TObjArray* GetCalPadPedestal (){return &fCalRocArrayPedestal;}//get calibration object | |
36 | const TObjArray* GetCalPadRMS(){return &fCalRocArrayRMS;} //get calibration object | |
37 | ||
38 | TH2S* GetHistoPedestal (Int_t sector, Bool_t force=kFALSE); //get refernce histogram | |
39 | void DumpToFile(const Char_t *filename, const Char_t *dir="", const Bool_t append=kFALSE); | |
40 | // | |
41 | Short_t GetDebugLevel(){ return fDebugLevel; } | |
42 | void SetDebugLevel(Short_t debug=1){ fDebugLevel = debug;} | |
43 | ||
44 | ||
45 | Bool_t TestEvent(); //test the fast approach to fill histogram - used for test purposes | |
46 | ||
47 | private: | |
48 | Int_t fFirstTimeBin; // First Time bin needed for analysis | |
49 | Int_t fLastTimeBin; // Last Time bin needed for analysis | |
50 | ||
51 | Int_t fAdcMin; // min adc channel of pedestal value | |
52 | Int_t fAdcMax; // max adc channel of pedestal value | |
53 | ||
54 | AliTPCROC *fROC; //! ROC information | |
55 | ||
56 | TObjArray fCalRocArrayPedestal; // Array of AliTPCCalROC class for Time0 calibration | |
57 | TObjArray fCalRocArrayRMS; // Array of AliTPCCalROC class for signal width calibration | |
58 | ||
59 | TObjArray fHistoPedestalArray; // Calibration histograms for Pedestal distribution | |
60 | ||
61 | TTreeSRedirector *fDebugStreamer; //! debug streamer | |
62 | ||
63 | Short_t fDebugLevel; | |
64 | //! debugging | |
65 | ||
66 | TH2S* GetHisto(Int_t sector, TObjArray *arr, | |
67 | Int_t nbinsY, Float_t ymin, Float_t ymax, | |
68 | Char_t *type, Bool_t force); | |
69 | ||
70 | AliTPCCalROC* GetCalRoc(Int_t sector, TObjArray* arr, Bool_t force); | |
71 | ||
72 | public: | |
73 | ||
74 | ||
75 | ClassDef(AliTPCCalibPedestal,1) | |
76 | }; | |
77 | ||
78 | ||
79 | ||
80 | #endif | |
81 |