]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALITPCCALIBCPID_H | |
2 | #define ALITPCCALIBCPID_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | #include "AliTPCcalibBase.h" | |
8 | #include "AliTPCCalPad.h" | |
9 | #include "TH2F.h" | |
10 | #include "TF1.h" | |
11 | #include "THnSparse.h" | |
12 | class TH1F; | |
13 | class TList; | |
14 | class AliESDEvent; | |
15 | class AliESDtrack; | |
16 | class AliTPCseed; | |
17 | ||
18 | #include "TTreeStream.h" | |
19 | ||
20 | ||
21 | class AliTPCcalibPID:public AliTPCcalibBase { | |
22 | public: | |
23 | AliTPCcalibPID(); | |
24 | AliTPCcalibPID(const Text_t *name, const Text_t *title); | |
25 | virtual ~AliTPCcalibPID(); | |
26 | ||
27 | virtual void Process(AliESDEvent *event); | |
28 | virtual Long64_t Merge(TCollection *li); | |
29 | virtual void Analyze(); | |
30 | void MakeReport(); | |
31 | // | |
32 | // | |
33 | TH1F * GetHistNTracks(){return fHistNTracks;}; | |
34 | TH1F * GetHistClusters(){return fClusters;}; | |
35 | TH2F * GetHistPileUp(){return fPileUp;}; | |
36 | TH2F * GetHistLandau(){return fLandau;}; | |
37 | // | |
38 | THnSparseS * GetHistQmax(){return fDeDxQmax;}; | |
39 | THnSparseS * GetHistQtot(){return fDeDxQtot;}; | |
40 | THnSparseS * GetHistRatio(){return fDeDxRatio;}; | |
41 | THnSparseS * GetHistShortMediumRatio(){return fDeDxShortMediumRatio;}; | |
42 | THnSparseS * GetHistLongMediumRatio(){return fDeDxLongMediumRatio;}; | |
43 | // | |
44 | void SetMIPvalue(Float_t mip){fMIP = mip;}; | |
45 | void SetLowerTrunc(Float_t lowerTrunc){fLowerTrunc = lowerTrunc;}; | |
46 | void SetUpperTrunc(Float_t upperTrunc){fUpperTrunc = upperTrunc;}; | |
47 | void SetUseShapeNorm(Bool_t useShapeNorm){fUseShapeNorm = useShapeNorm;}; | |
48 | void SetUsePosNorm(Bool_t usePosNorm){fUsePosNorm = usePosNorm;}; | |
49 | void SetPadNorm(Int_t padNorm){fUsePadNorm = padNorm;}; | |
50 | void SetIsCosmic(Bool_t isCosmic){fIsCosmic = isCosmic;}; | |
51 | // | |
52 | // | |
53 | static void BinLogX(THnSparse * h, Int_t axisDim); // method for correct histogram binning | |
54 | ||
55 | ||
56 | private: | |
57 | // | |
58 | // parameter specifications | |
59 | // | |
60 | Float_t fMIP; | |
61 | Float_t fLowerTrunc; | |
62 | Float_t fUpperTrunc; | |
63 | Bool_t fUseShapeNorm; | |
64 | Bool_t fUsePosNorm; | |
65 | Int_t fUsePadNorm; | |
66 | // | |
67 | Bool_t fIsCosmic; | |
68 | // | |
69 | // histograms | |
70 | // | |
71 | TH1F *fHistNTracks; // histogram showing number of ESD tracks per event | |
72 | TH1F *fClusters; // histogram showing the number of clusters per track | |
73 | TH2F *fPileUp; // histogram which shows correlation between time mismatch and dEdx signal | |
74 | TH2F *fLandau; // histogran which shows Landau distribution for the three pad geometries | |
75 | // | |
76 | THnSparseS * fDeDxQmax; // histogram which shows dEdx (Qmax) as a function of z,sin(phi),tan(theta),p,betaGamma | |
77 | THnSparseS * fDeDxQtot; // histogram which shows dEdx (Qtot) as a function of z,sin(phi),tan(theta),p,betaGamma | |
78 | THnSparseS * fDeDxRatio; // histogram which shows dEdx ratio (Qmax/Qtot) as a function of z,sin(phi),tan(theta),p,betaGamma | |
79 | THnSparseS * fDeDxShortMediumRatio; // histogram which shows dEdx ratio (QmaxShort/QmaxMedium) as a function of z,sin(phi),tan(theta),p,betaGamma | |
80 | THnSparseS * fDeDxLongMediumRatio; // histogram which shows dEdx ratio (QmaxLong/QmaxMedium) as a function of z,sin(phi),tan(theta),p,betaGamma | |
81 | // | |
82 | AliTPCcalibPID(const AliTPCcalibPID&); | |
83 | AliTPCcalibPID& operator=(const AliTPCcalibPID&); | |
84 | ||
85 | ClassDef(AliTPCcalibPID, 1); | |
86 | }; | |
87 | ||
88 | #endif | |
89 | ||
90 |