]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSPid.h
Moving the functions used to initialize TF1 and TF2 to the pivate part of the class
[u/mrichter/AliRoot.git] / ITS / AliITSPid.h
CommitLineData
23efe5f1 1#ifndef ALIITSPID_H
2#define ALIITSPID_H
e75c69cd 3
23efe5f1 4#include <TObject.h>
e75c69cd 5
6class TClonesArray;
7class TVector;
8057c644 8class AliITSIOTrack;
5aa865de 9class AliKalmanTrack;
e75c69cd 10class AliITStrackV2;
11class TF1;
12
8057c644 13
14class AliITSPid : public TObject {
23efe5f1 15
16public:
17 AliITSPid(Int_t ntrs=1000);
18 virtual ~AliITSPid(){}
8057c644 19
23efe5f1 20 void SetEdep(Int_t track,Float_t Edep);
21 void SetPmom(Int_t track,Float_t Pmom);
22 void SetPcod(Int_t track,Int_t Pcod);
23 void Print(Int_t track);
d2f55a22 24 virtual void Print(Option_t *option="") const {TObject::Print(option);}
23efe5f1 25 void Tab(void);
26 void Reset(void);
27 void SetVec(Int_t track,TVector info);
8057c644 28 TVector* GetVec(Int_t track) const;
e75c69cd 29 Int_t GetPcode(TClonesArray* rps,Float_t pm);
30 Int_t GetPcode(Float_t p,Float_t pm);
5aa865de 31 Int_t GetPcode(AliKalmanTrack* track);
e75c69cd 32 Int_t GetPcode(AliITSIOTrack* track);
33 Int_t GetPcode(AliITStrackV2* track);
34 void SetCut(Int_t n,Float_t pm,Float_t pilo,Float_t pihi,
35 Float_t klo,Float_t khi,Float_t plo,Float_t phi);
36 void SetAProb(Int_t ivar,Int_t icut,Float_t apro){ fAprob[ivar][icut]=apro; }
8057c644 37 Float_t GetAProb(Int_t ivar,Int_t icut) const { return fAprob[ivar][icut]; }
38 Float_t GetWpi() const {return fWpi;}
39 Float_t GetWk() const {return fWk;}
40 Float_t GetWp() const {return fWp;}
41 Int_t GetPid() const {return fPcode;};
23efe5f1 42protected:
8057c644 43 // copy constructor and assignment operator are protected
44 // since they are not allowed
45 AliITSPid(const AliITSPid &source); // copy constructor.
46 AliITSPid& operator=(const AliITSPid& /* source */); // = operator.
e75c69cd 47
8057c644 48 int Qcomp(Float_t* qa,Float_t* qb) const {return qa[0]>qb[0]?1:0;}
e75c69cd 49 Float_t Qtrm(Int_t track);
8057c644 50 Float_t Qtrm(Float_t qarr[6],Int_t narr) const;
e75c69cd 51 Int_t Wpik(Float_t pm,Float_t q);
52 Int_t Wpikp(Float_t pm,Float_t q);
53 Int_t Pion(){return fWpi=1.,fPcode=211;}
54 Int_t Kaon(){return fWk=1.,fPcode=321;}
55 Int_t Proton(){return fWp=1.,fPcode=2212;}
8057c644 56 //================ Data members ========================
57 Float_t fCut[13][7],fAprob[3][8]; //Cuts and prior probs tables
58 Int_t fMxtrs; //Maximum tracks limit
59 TClonesArray *fTrs; //Tracks set under investigation
60 Float_t fWpi,fWk,fWp; //Probabilities for pions,kaons,protons
61 Float_t fRpik,fRppi,fRpka,fRp; //Signal ratios
62 Int_t fPcode; //Particle code
63 Float_t fSigmin; // Tuning parameter
64 Int_t fSilent; // Output suppresion flag
65 TF1* fCutKa; // Pions-kaons cut function
66 TF1* fCutPr; // Kaons-protons cut function
67 TF1* fGGpi[6];// Pions signal parametrization for Hijing
68 TF1* fGGka[3];// Kaons --//--
69 TF1* fGGpr[3];// Protons --//--
70 TF1* fggpi; // Pions signal for given momentum
71 TF1* fggka; // Kaons --//--
72 TF1* fggpr; // Protons --//--
e6727e13 73 ClassDef(AliITSPid,2) // Class for ITS PID
23efe5f1 74};
75
76#endif
77
78
79
80