AliTPCcalibTimeGain.cxx - Adding the Gamma conversion selected electorns
[u/mrichter/AliRoot.git] / TPC / AliTPCPid.h
CommitLineData
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 15class AliKalmanTrack;
b8def77a 16#include <assert.h>
ad350af6 17
18class TF1;
19class TClonesArray;
b8def77a 20//___________________________________________________________________________
21class AliTPCPid :
22 public TObject {
23
24public:
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;}
60private:
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