]>
Commit | Line | Data |
---|---|---|
b8def77a | 1 | #ifndef ALITPCPID_H |
2 | #define ALITPCPID_H | |
733304f0 | 3 | |
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id$ */ | |
8 | ||
b8def77a | 9 | #include <TObject.h> |
ad350af6 | 10 | //#include <TF1.h> |
11 | //#include <TClonesArray.h> | |
b8def77a | 12 | #include <TVector.h> |
13 | #include "../TPC/AliTPCtrack.h" | |
14 | //#include "../ITS/AliITSIOTrack.h" | |
c300c64c | 15 | class AliKalmanTrack; |
b8def77a | 16 | #include <assert.h> |
ad350af6 | 17 | |
18 | class TF1; | |
19 | class TClonesArray; | |
b8def77a | 20 | //___________________________________________________________________________ |
21 | class AliTPCPid : | |
22 | public TObject { | |
23 | ||
24 | public: | |
179c6296 | 25 | AliTPCPid(Int_t ntrs=1000); |
b8def77a | 26 | virtual ~AliTPCPid(){} |
ad350af6 | 27 | AliTPCPid( const AliTPCPid& r); |
179c6296 | 28 | AliTPCPid &operator = (const AliTPCPid & param); //assignment |
b8def77a | 29 | void SetEdep(Int_t track,Float_t Edep); |
30 | void SetPmom(Int_t track,Float_t Pmom); | |
31 | void SetPcod(Int_t track,Int_t Pcod); | |
7360a026 | 32 | void PrintPID(Int_t track); |
b8def77a | 33 | void Tab(void); |
34 | void Reset(void); | |
ad350af6 | 35 | void SetVec(Int_t track,TVector info) const; |
36 | TVector* GetVec(Int_t track) const; | |
37 | Int_t GetPcode(TClonesArray* ,Float_t) const; | |
38 | Int_t GetPcode(Float_t q,Float_t pm); | |
39 | Int_t GetPcode(AliTPCtrack*track); | |
c84a5e9e | 40 | //Int_t GetPcode(AliKalmanTrack* track); |
ad350af6 | 41 | void SetCut(Int_t n, Float_t pm, Float_t pilo, Float_t pihi, |
42 | Float_t klo, Float_t khi, Float_t plo, | |
43 | Float_t phi); | |
44 | void SetAProb(Int_t ivar,Int_t icut,Float_t apro){ faprob[ivar][icut]=apro; } | |
45 | Float_t GetAProb(Int_t ivar,Int_t icut) const | |
46 | { return faprob[ivar][icut]; } | |
47 | Float_t GetWpi() const {return fWpi;} | |
48 | Float_t GetWk() const {return fWk;} | |
49 | Float_t GetWp() const {return fWp;} | |
50 | Int_t GetPid() const {return fPcode;}; | |
51 | Float_t Qcorr(Float_t xc); | |
52 | Int_t Qcomp(Float_t* qa,Float_t* qb) const {return qa[0]>qb[0]?1:0;} | |
53 | Float_t Qtrm(Int_t track) const; | |
54 | Float_t Qtrm(Float_t qarr[6],Int_t narr); | |
55 | Int_t Wpik(Int_t nc, Float_t q); | |
56 | Int_t Wpikp(Int_t nc, Float_t q); | |
57 | Int_t Pion(){return /*fWpi=1.,*/fPcode=211;} | |
58 | Int_t Kaon(){return /*fWk=1.,*/fPcode=321;} | |
59 | Int_t Proton(){return /*fWp=1.,*/fPcode=2212;} | |
60 | private: | |
61 | TF1 *fCutKa; // function | |
62 | TF1 *fCutPr; // function | |
63 | Float_t fCutKaTune,fCutPrTune; // tune cuts | |
64 | Float_t fSigmin; // sigma min | |
65 | Int_t fSilent; // flag | |
66 | Float_t fcut[13][7],faprob[3][8]; //cuts | |
67 | Int_t fmxtrs; // fmxtrs | |
68 | TClonesArray *trs; //pointer | |
69 | Float_t fqtot; // tot q | |
70 | Float_t fWpi,fWk,fWp; // weights | |
71 | Float_t fRpik,fRppi,fRpka,fRp; // ratios | |
72 | Int_t fPcode; //p-code | |
73 | ||
b8def77a | 74 | ClassDef(AliTPCPid,1) // Class for TPC PID |
ad350af6 | 75 | |
b8def77a | 76 | }; |
77 | ||
78 | #endif | |
79 | ||
80 | ||
81 | ||
82 |