]>
Commit | Line | Data |
---|---|---|
72e010d3 | 1 | #ifndef ALITPCCALIBKR_H |
2 | #define ALITPCCALIBKR_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | #include <TObject.h> | |
7 | #include <TObjArray.h> | |
8 | #include <TChain.h> | |
9 | #include <TTree.h> | |
10 | #include <TClonesArray.h> | |
11 | ||
12 | #include "AliTPCclusterKr.h" | |
13 | ||
14 | class TH3F; | |
15 | class TH1D; | |
16 | ||
17 | class AliTPCCalibKr : public TObject { | |
18 | ||
19 | public: | |
20 | AliTPCCalibKr(); | |
21 | AliTPCCalibKr(const AliTPCCalibKr&); // copy constructor | |
22 | virtual ~AliTPCCalibKr(); | |
23 | ||
24 | AliTPCCalibKr& operator=(const AliTPCCalibKr&); | |
25 | ||
26 | // | |
27 | void Init(); | |
afb50fd6 | 28 | Bool_t Process(AliTPCclusterKr *cluster); |
045a55c4 | 29 | Bool_t Accept(AliTPCclusterKr *cluster); |
72e010d3 | 30 | Bool_t Update(AliTPCclusterKr *cluster); |
31 | TH3F* CreateHisto(Int_t chamber); | |
32 | ||
33 | const TObjArray* GetHistoKrArray () {return &fHistoKrArray;} // get calibration object | |
34 | TH3F* GetHistoKr(Int_t sector) const; // get refernce histogram | |
35 | ||
36 | Bool_t IsCSide(Int_t chamber); | |
37 | Bool_t IsIROC(Int_t chamber); | |
38 | ||
72e010d3 | 39 | void Analyse(); |
40 | static TH1D* ProjectHisto(TH3F* histo3D, const char* name = "_pz", Int_t firstxbin = 0, Int_t lastxbin = 0, Int_t firstybin = 0, Int_t lastybin = 0); | |
41 | ||
ff0df25d | 42 | void SetASide(Bool_t bA = kTRUE) {fASide = bA;} // fill histo only A TPC side |
43 | void SetBSide(Bool_t bC = kTRUE) {fCSide = bC;} // fill histo only C TPC side | |
72e010d3 | 44 | |
afb50fd6 | 45 | //Merge output objects (needed by PROOF) |
46 | virtual Long64_t Merge(TCollection* list); | |
aa967a06 | 47 | |
48 | // Setters | |
49 | void SetADCOverClustSizeRange(Float_t min=0.0,Float_t max=1.0e9) {fADCOverClustSizeMin = min ; fADCOverClustSizeMax = max; } | |
50 | void SetMaxADCOverClustADCRange(Float_t min=0.0,Float_t max=1.0e9) {fMaxADCOverClustADCMin = min ; fMaxADCOverClustADCMax = max; } | |
51 | void SetTimeRange(Float_t min=0.0, Float_t max=1.0e9) {fTimeMin = min ; fTimeMax = max; } | |
52 | void SetClustSizeRange(Float_t min=0.0, Float_t max=1.0e9) {fClustSizeMin = min ; fClustSizeMax = max; } | |
53 | ||
72e010d3 | 54 | private: |
55 | ||
ff0df25d | 56 | Bool_t fASide; //! Only A side |
57 | Bool_t fCSide; //! Only C side | |
72e010d3 | 58 | TObjArray fHistoKrArray; // Calibration histograms for Kr distribution |
59 | ||
aa967a06 | 60 | Float_t fADCOverClustSizeMin; // min ADCcluster over Cluster size ratio |
61 | Float_t fADCOverClustSizeMax; // max ADCcluster over Cluster size ratio | |
62 | Float_t fMaxADCOverClustADCMin; // min MaxADC over ADCcluster ratio | |
63 | Float_t fMaxADCOverClustADCMax; // max MaxADC over ADCcluster ratio | |
64 | Float_t fTimeMin; // min time bin for MaxADC | |
65 | Float_t fTimeMax; // max time bin for MaxADC | |
66 | Float_t fClustSizeMin; // min cluster size | |
67 | Float_t fClustSizeMax; // max cluster size | |
68 | ||
72e010d3 | 69 | public: |
70 | ClassDef(AliTPCCalibKr, 1) // Implementation of the TPC pedestal and noise calibration | |
71 | }; | |
72 | ||
73 | #endif | |
74 |