]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JCORRAN/AliJTrack.h
Fixed compiler warnings (Jason)
[u/mrichter/AliRoot.git] / PWG4 / JCORRAN / AliJTrack.h
CommitLineData
2f4cac02 1// $Id: AliJTrack.h,v 1.3 2008/01/21 11:56:39 djkim Exp $
2
3////////////////////////////////////////////////////
4/*!
5 \file AliJTrack.h
6 \brief
7 \author J. Rak, D.J.Kim, R.Diaz (University of Jyvaskyla)
8 \email: djkim@jyu.fi
9 \version $Revision: 1.1 $
10 \date $Date: 2008/05/02 11:56:39 $
11*/
12////////////////////////////////////////////////////
13
14#ifndef ALIJTRACK_H
15#define ALIJTRACK_H
16
17#ifndef ROOT_TObject
18#include <TObject.h>
19#endif
20
21#include <iostream>
22#include <fstream>
23#include <stdlib.h>
24#include <stdio.h>
25#include <math.h>
26
27
28#include "AliPhJBaseTrack.h"
29#include "JConst.h"
30
31//class TObject;
32
33class AliJTrack : public AliPhJBaseTrack {
34
35public:
36
37 enum AliJTrkPID {
38 kElectronAli = 0,
39 kMuonAli = 1,
40 kPionAli = 2,
41 kKaonAli = 3,
42 kProtonAli = 4,
43 kDeuteronAli = 5,
44 kTritonAli = 6,
45 kHelium3Ali = 7,
46 kAlphaAli = 8,
47 kUnknownAli = 9,
48 kMostProbableAli = -1
49 };
50 enum {
51 kITSin=0x0001,kITSout=0x0002,kITSrefit=0x0004,kITSpid=0x0008,
52 kTPCin=0x0010,kTPCout=0x0020,kTPCrefit=0x0040,kTPCpid=0x0080,
53 kTRDin=0x0100,kTRDout=0x0200,kTRDrefit=0x0400,kTRDpid=0x0800,
54 kTOFin=0x1000,kTOFout=0x2000,kTOFrefit=0x4000,kTOFpid=0x8000,
55 kHMPIDout=0x10000,kHMPIDpid=0x20000,
56 kEMCALmatch=0x40000,
57 kTRDbackup=0x80000,
58 kTRDStop=0x20000000,
59 kESDpid=0x40000000,
60 kTIME=0x80000000,
61 kGlobalMerge=0x08000000
62 };
63
64 AliJTrack(); // default constructor
65 AliJTrack(const AliJTrack& a); // copy constructor
66 ~AliJTrack(){;} //destructor
67
68 void GetPID(Double_t *pid) const {
69 for(Int_t i=0; i<10; ++i) pid[i]=ftrkPID[i];
70 }
71
72 void SetPID(const Double_t *pid);
73
74 void ConvertAliPID();
75 Double_t GetChi2perNDF() const {return fChi2perNDF;}
76 Double_t GetChi2Trig() const {return fChi2Trig;}
77
78 void SetChi2perNDF(Double_t chi2) {fChi2perNDF = chi2;}
79 void SetChi2Trig(Double_t chi2) {fChi2Trig = chi2;}
80
81 ULong_t GetRecFlags() const { return fRecFlags; }
82 void SetRecFlags(ULong_t flags) { fRecFlags = flags; }
83
84 Double_t GetTPCdEdx() const {return fTPCdEdx;}
85 void SetTPCdEdx(Double_t dedx) {fTPCdEdx = dedx;}
86
87 int GetTPCnClust() const {return fTPCnClust;}
88 void SetTPCnClust(int ival) {fTPCnClust = ival;}
89
90 Double_t GetTPCDCAXY() const {return fTPCDCAXY;}
91 void SetTPCDCAXY(Double_t ival) {fTPCDCAXY = ival;}
92
93 Double_t GetTPCDCAZ() const {return fTPCDCAZ;}
94 void SetTPCDCAZ(Double_t ival) {fTPCDCAZ = ival;}
95
96 Double_t GetTPCClustPerFindClust() const {return fTPCClustPerFindClust;}
97 void SetTPCClustPerFindClust(Double_t ival) {fTPCClustPerFindClust = ival;}
98
99 Double_t GetTPCChi2PerClust() const {return fTPCChi2PerClust;}
100 void SetTPCChi2PerClust(Double_t ival) {fTPCChi2PerClust = ival;}
101
102 Double_t GetImapactXY() const {return fImapactXY;}
103 void SetImapactXY(Double_t ival) {fImapactXY = ival;}
104
105 Double_t GetImapactZ() const {return fImapactZ;}
106 void SetImapactZ(Double_t ival) {fImapactZ = ival;}
107
108 Int_t GetKinkIndex() const {return fKinkIndex;}
109 void SetKinkIndex(Int_t ival) {fKinkIndex = ival;}
110
111 UInt_t GetStatus() const {return fstatus;}
112 void SetStatus(UInt_t ival) {fstatus = ival;}
113
114 void GetExternalDiaCovariance(Double_t *ecov) const {
115 for(Int_t i=0; i<5; i++) ecov[i]=fextDiaCov[i];
116 }
117
118 void SetExternalDiaCovariance(const Double_t *ecov);
119
120 AliJTrack& operator=(const AliJTrack& trk);
121
122private:
123
124 Double_t ftrkPID[10]; // [0.,1.,8] pointer to PID object
125 Double_t fChi2perNDF; // chi2/NDF of mometum fit !! see details
126 Double_t fChi2Trig; // chi2 of trigger/track matching !! see details
127
128 ULong_t fRecFlags; // reconstruction status flags
129
130 //TPC
131 Double_t fTPCdEdx; // track TPC dE/dx
132 int fTPCnClust; // track TPC nclusters
133 Double_t fImapactXY; // distance of a track to the event vertex in xy plane
134 Double_t fImapactZ; // distance of a track to the event vertex in z direction
135 Double_t fTPCDCAXY; // track impact parameter in XY
136 Double_t fTPCDCAZ; // track impact parameter in Z
137 Double_t fTPCClustPerFindClust; // tpc
138 Double_t fTPCChi2PerClust; //tpc chi2 per cluster
139 //ESD track cuts
140 Int_t fKinkIndex; //kink index ... indication of kink daughters
141 UInt_t fstatus; // reconstruction flag status
142 Double_t fextDiaCov[5];//track parameters covariance matrix
143
144
145 ClassDef(AliJTrack,1)
146};
147
148#endif