96f76d7092eb918cae030927a385ef4a81f823a5
[u/mrichter/AliRoot.git] / ITS / AliITSPid.h
1 #ifndef ALIITSPID_H
2 #define ALIITSPID_H
3 #include <TObject.h>
4 #include <TClonesArray.h>
5 #include <TVector.h>
6 #include <assert.h>
7 //#include <stl.h>
8 //___________________________________________________________________________
9 class  AliITSPid :
10   public TObject {
11
12 public:
13                 AliITSPid(Int_t ntrs=1000);
14                 virtual ~AliITSPid(){}
15         void    SetEdep(Int_t track,Float_t Edep);
16         void    SetPmom(Int_t track,Float_t Pmom);
17         void    SetPcod(Int_t track,Int_t Pcod);
18         void    Print(Int_t track);
19         void    Tab(void);
20         void    Reset(void);
21         void    SetVec(Int_t track,TVector info);
22         TVector* GetVec(Int_t track);
23         Int_t   GetPcode(TClonesArray*,Float_t);
24         Int_t   GetPcode(Float_t,Float_t);
25         void    SetCut(Int_t,Float_t,Float_t,Float_t,
26                             Float_t,Float_t,Float_t,Float_t);
27         Float_t GetWpi(){return fWpi;}
28         Float_t GetWk(){return fWk;}
29         Float_t GetWp(){return fWp;}
30         Int_t   GetPid(){return fPcode;};
31 protected:
32 public:
33         Float_t cut[13][7];
34         Int_t       mxtrs;
35         TClonesArray *trs;
36         Float_t qtot;
37         Float_t fWpi,fWk,fWp;
38         Float_t fRpik,fRppi,fRpka,fRp; 
39         Int_t   fPcode;
40 //private:
41 public:
42         Float_t qcorr(Float_t);
43         int     qcomp(Float_t* qa,Float_t* qb){return qa[0]>qb[0]?1:0;}
44         Float_t qtrm(Int_t track);
45         Int_t   wpik(Int_t,Float_t);
46         Int_t   wpikp(Int_t,Float_t);
47         Int_t   pion(){return fWpi=1.,fPcode=211;}
48         Int_t   kaon(){return fWk=1.,fPcode=321;}
49         Int_t   proton(){return fWp=1.,fPcode=2212;}
50 public:
51   ClassDef(AliITSPid,1) // Class for ITS PID
52 };
53
54 #endif  
55
56
57
58