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