]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/Correlations/JCORRAN/AliJTrack.h
Corrected end-of-line behavior
[u/mrichter/AliRoot.git] / PWGCF / Correlations / JCORRAN / AliJTrack.h
CommitLineData
37dde34e 1// $Id: AliJTrack.h,v 1.3 2008/01/21 11:56:39 djkim Exp $
2////////////////////////////////////////////////////
3/*!
4 \file AliJTrack.h
5 \brief
6 \author J. Rak, D.J.Kim, R.Diaz (University of Jyvaskyla)
7 \email: djkim@jyu.fi
8 \version $Revision: 1.1 $
9 \date $Date: 2008/05/02 11:56:39 $
10*/
11////////////////////////////////////////////////////
12
13#ifndef ALIJTRACK_H
14#define ALIJTRACK_H
15
16#ifndef ROOT_TObject
17#include <TObject.h>
18#endif
19
20#include "AliJBaseTrack.h"
21
22class AliJTrack : public AliJBaseTrack {
23
24public:
25 enum AliJTrkPID {
26 kMostProbableAliJ = -1,
27 kElectronAliJ,
28 kMuonAliJ,
29 kPionAliJ,
30 kKaonAliJ,
31 kProtonAliJ,
32 kNAliJTrkPID
33 };
34
35 enum AliJTrkPIDmethod {
36 kTOF=0, kTPC=1, kTPCTOF=2, kNAliJTrkPIDmethod
37 };
38
39 AliJTrack(); // default constructor
40 AliJTrack(const AliJTrack& a); // copy constructor
41 ~AliJTrack(){;} //destructor
42
43 Double32_t GetPID(AliJTrkPID p, AliJTrkPIDmethod m) const { return fTrkPID[p][m]; }
44 UInt_t GetFilterMap() const { return fFilterMap; }
45 Bool_t IsFiltered( int i ) const { return TESTBIT( fFilterMap, i); }
46 Bool_t IsFilteredMask( UInt_t mask ) const { return ((Bool_t)(((fFilterMap) & mask) != 0)); };
47 int GetTPCnClust() const {return fTPCnClust;}
48 Float_t GetTPCdEdx() const {return fTPCdEdx; }
49 Float_t GetTOFbeta() const {return fTOFbeta;}
50 Float_t GetExpectedTOFbeta( AliJTrkPID p ) const {return fExpTOFbeta[p];}
51 Double_t GetExpectedTPCdEdx( AliJTrkPID p ) const {return fExpTPCdEdx[p];}
52 Double_t GetTPCsigma( AliJTrkPID p) const {return fTPCsigma[p];}
53 Double_t GetTOFsigma( AliJTrkPID p) const {return fTOFsigma[p];}
54
55 void SetPID(AliJTrkPID p, double pro, AliJTrkPIDmethod m){ fTrkPID[p][m] = pro; }
56 void SetFilterMap( UInt_t map ){ fFilterMap = map; }
57 void SetFilterMap( int i, bool t ){ t?SETBIT(fFilterMap,i):CLRBIT(fFilterMap,i); }
58 void SetTPCnClust(int ival) {fTPCnClust = ival;}
59 void SetTPCdEdx( Float_t dedx ){ fTPCdEdx = dedx; }
60 void SetTOFbeta(Float_t beta) {fTOFbeta = beta;}
61 void SetExpectedTOFbeta(AliJTrkPID p, float exbeta) {fExpTOFbeta[p] = exbeta;}
62 void SetExpectedTPCdEdx(AliJTrkPID p, Double_t exdEdx) {fExpTPCdEdx[p] = exdEdx;}
63 void SetTPCsigma(AliJTrkPID p, Double_t TPCsigma) {fTPCsigma[p] = TPCsigma;}
64 void SetTOFsigma(AliJTrkPID p, Double_t TOFsigma) {fTOFsigma[p] = TOFsigma;} // Return the expected sigma of the PID signal for the specified particle type.
65
66 void SetTPCTrack( Float_t px, Float_t py, Float_t pz ){ fTPCTrack[0]=px;fTPCTrack[1]=py;fTPCTrack[2]=pz;}
67 void SetUseTPCTrack(){ SetPxPyPzE( fTPCTrack[0], fTPCTrack[1], fTPCTrack[2], 0 ); }
68 Float_t* GetTPCTrack(){ return fTPCTrack; }
69
70 AliJTrack& operator=(const AliJTrack& trk);
71
72private:
73 Double32_t fTrkPID[kNAliJTrkPID][kNAliJTrkPIDmethod]; //[0.,1.,8] Array for PID.
74 UInt_t fFilterMap; // bit serious of cuts
75 Short_t fTPCnClust; // track TPC nclusters
76 Float_t fTPCdEdx;
77 Float_t fTOFbeta; //!
78 Float_t fExpTOFbeta[kNAliJTrkPID]; //!
79 Double_t fExpTPCdEdx[kNAliJTrkPID]; //!
80 Double_t fTPCsigma[kNAliJTrkPID]; //!
81 Double_t fTOFsigma[kNAliJTrkPID]; //!
82 Float_t fTPCTrack[3]; // px, py, pz for TPCTrack;
83
84 ClassDef(AliJTrack,1)
85};
86
87#endif