]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCPid.h
PID packages by B. Batyunya
[u/mrichter/AliRoot.git] / TPC / AliTPCPid.h
1 #ifndef ALITPCPID_H
2 #define ALITPCPID_H
3 #include <TObject.h>
4 #include <TF1.h>
5 #include <TClonesArray.h>
6 #include <TVector.h>
7 #include "../TPC/AliTPCtrack.h"
8 //#include "../ITS/AliITSIOTrack.h"
9 #include "../ITS/AliITStrackV2.h"
10 #include <assert.h>
11 //___________________________________________________________________________
12 class  AliTPCPid :
13   public TObject {
14
15 public:
16                 AliTPCPid(Int_t ntrs=1000);
17                 virtual ~AliTPCPid(){}
18         void    SetEdep(Int_t track,Float_t Edep);
19         void    SetPmom(Int_t track,Float_t Pmom);
20         void    SetPcod(Int_t track,Int_t Pcod);
21         void    Print(Int_t track);
22         void    Tab(void);
23         void    Reset(void);
24         void    SetVec(Int_t track,TVector info);
25         TVector* GetVec(Int_t track);
26         Int_t   GetPcode(TClonesArray*,Float_t);
27         Int_t   GetPcode(Float_t,Float_t);
28         Int_t   GetPcode(AliTPCtrack*);
29 //        Int_t   GetPcode(AliITSIOTrack*); 
30         Int_t   GetPcode(AliITStrackV2*);
31         void    SetCut(Int_t,Float_t,Float_t,Float_t,
32                             Float_t,Float_t,Float_t,Float_t);
33         void    SetAProb(Int_t ivar,Int_t icut,Float_t apro){ aprob[ivar][icut]=apro; } 
34         Float_t GetAProb(Int_t ivar,Int_t icut){ return aprob[ivar][icut]; } 
35         Float_t GetWpi(){return fWpi;}
36         Float_t GetWk(){return fWk;}
37         Float_t GetWp(){return fWp;}
38         Int_t   GetPid(){return fPcode;};
39 protected:
40 public:
41         Float_t cut[13][7],aprob[3][8];
42         Int_t       mxtrs;
43         TClonesArray *trs;
44         Float_t qtot;
45         Float_t fWpi,fWk,fWp;
46         Float_t fRpik,fRppi,fRpka,fRp; 
47         Int_t   fPcode;
48 //private:
49 public:
50         TF1 *fCutKa;
51         TF1 *fCutPr;
52         Float_t fCutKaTune,fCutPrTune;
53         Float_t qcorr(Float_t);
54         int     qcomp(Float_t* qa,Float_t* qb){return qa[0]>qb[0]?1:0;}
55         Float_t qtrm(Int_t track);
56         Float_t qtrm(Float_t qarr[6],Int_t narr);
57         Float_t fSigmin;
58         Int_t   wpik(Int_t,Float_t);
59         Int_t   wpikp(Int_t,Float_t);
60         Int_t   pion(){return /*fWpi=1.,*/fPcode=211;}
61         Int_t   kaon(){return /*fWk=1.,*/fPcode=321;}
62         Int_t   proton(){return /*fWp=1.,*/fPcode=2212;}
63         Int_t   fSilent;
64 public:
65   ClassDef(AliTPCPid,1) // Class for TPC PID
66 };
67
68 #endif  
69
70
71
72