]>
Commit | Line | Data |
---|---|---|
40b4e5ea | 1 | #ifndef AliTPCdEdxInfo_H |
2 | #define AliTPCdEdxInfo_H | |
3 | ||
1445f03c | 4 | class TGraphErrors; |
5 | class TObjArray; | |
d3929eb3 | 6 | class AliExternalTrackParam; |
40b4e5ea | 7 | #include <TObject.h> |
8 | ||
9 | class AliTPCdEdxInfo : public TObject | |
10 | { | |
11 | public: | |
12 | AliTPCdEdxInfo(); | |
13 | AliTPCdEdxInfo(const AliTPCdEdxInfo& source); | |
08c24516 | 14 | AliTPCdEdxInfo& operator=(const AliTPCdEdxInfo& source); |
f3bfdf9d | 15 | Double_t GetWeightedMean(Int_t qType, Int_t wType, Double_t w0, Double_t w1, Double_t w2); |
d3929eb3 | 16 | Double_t GetFractionOfClusters(Int_t iregion){ return fTPCsignalNRowRegion[iregion]>0 ? Double_t(fTPCsignalNRegion[iregion])/Double_t(fTPCsignalNRowRegion[iregion]):0;} |
40b4e5ea | 17 | // |
ca6b3353 | 18 | // qTot info |
19 | void GetTPCSignalRegionInfo(Double_t signal[4], Char_t ncl[3], Char_t nrows[3]) const; | |
20 | void GetTPCSignals(Double_t signal[4]) const; | |
21 | ||
22 | void SetTPCSignalRegionInfo(Double_t signal[4], Char_t ncl[3], Char_t nrows[3]); | |
23 | void SetTPCSignals(Double_t signal[4]); | |
24 | ||
25 | ||
26 | // qMax info | |
27 | void GetTPCSignalRegionInfoQmax(Double_t signal[4], Char_t ncl[3], Char_t nrows[3]) const; | |
28 | void GetTPCSignalsQmax(Double_t signal[4]) const; | |
29 | ||
30 | void SetTPCSignalRegionInfoQmax(Double_t signal[4], Char_t ncl[3], Char_t nrows[3]); | |
31 | void SetTPCSignalsQmax(Double_t signal[4]); | |
32 | ||
f3bfdf9d | 33 | Double_t GetSignalTot(Int_t index){ return fTPCsignalRegion[index];} |
34 | Double_t GetSignalMax(Int_t index){ return fTPCsignalRegionQmax[index];} | |
d3929eb3 | 35 | Double_t GetNumberOfClusters(Int_t index) {return fTPCsignalNRegion[index%3];} |
36 | Double_t GetNumberOfCrossedRows(Int_t index) {return fTPCsignalNRowRegion[index%3];} | |
ea6e6480 | 37 | // |
ca6b3353 | 38 | Double_t GetTPCsignalShortPad() const {return fTPCsignalRegion[0];} |
39 | Double_t GetTPCsignalMediumPad() const {return fTPCsignalRegion[1];} | |
40 | Double_t GetTPCsignalLongPad() const {return fTPCsignalRegion[2];} | |
41 | Double_t GetTPCsignalOROC() const {return fTPCsignalRegion[3];} | |
42 | ||
43 | Double_t GetTPCsignalShortPadQmax() const {return fTPCsignalRegionQmax[0];} | |
44 | Double_t GetTPCsignalMediumPadQmax() const {return fTPCsignalRegionQmax[1];} | |
45 | Double_t GetTPCsignalLongPadQmax() const {return fTPCsignalRegionQmax[2];} | |
46 | Double_t GetTPCsignalOROCQmax() const {return fTPCsignalRegionQmax[3];} | |
1445f03c | 47 | static void RegisterSectorCalibration(TGraphErrors* gainSector, Int_t regionID, Int_t calibID); |
d3929eb3 | 48 | Double_t GetdEdxInfo(AliExternalTrackParam *param, Int_t regionID, Int_t calibID, Int_t qID, Int_t valueID); |
1445f03c | 49 | private: |
40b4e5ea | 50 | |
ca6b3353 | 51 | Double32_t fTPCsignalRegion[4]; //[0.,0.,10] TPC dEdx signal in 4 different regions - 0 - IROC, 1- OROC medium, 2 - OROC long, 3- OROC all, (default truncation used) - for qTot |
52 | Double32_t fTPCsignalRegionQmax[4]; //[0.,0.,10] TPC dEdx signal in 4 different regions - 0 - IROC, 1- OROC medium, 2 - OROC long, 3- OROC all, (default truncation used) - for qMax | |
40b4e5ea | 53 | Char_t fTPCsignalNRegion[3]; // number of clusters above threshold used in the dEdx calculation |
54 | Char_t fTPCsignalNRowRegion[3]; // number of crosed rows used in the dEdx calculation - signal below threshold included | |
1445f03c | 55 | // |
56 | static TObjArray *fArraySectorCalibration; | |
40b4e5ea | 57 | |
ca6b3353 | 58 | ClassDef(AliTPCdEdxInfo,3) |
40b4e5ea | 59 | }; |
60 | ||
61 | #endif |