correct for omission
[u/mrichter/AliRoot.git] / STEER / AliESDHLTtrack.h
CommitLineData
482070f2 1#ifndef ALIESDHLTTRACK_H
2#define ALIESDHLTTRACK_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5//-------------------------------------------------------------------------
6// Class AliESDHLTtrack
7// This is the class to handle HLT reconstruted TPC tracks
8//-------------------------------------------------------------------------
9#include "TObject.h"
faffd83e 10#include "TMath.h"
482070f2 11
e819460c 12class AliKalmanTrack;
13
482070f2 14class AliESDHLTtrack : public TObject {
15public:
16 AliESDHLTtrack();
17 virtual ~AliESDHLTtrack() {}
18
19 // getters
20 Int_t GetNHits() const {return fNHits;}
21
22 Int_t GetMCid() const {return fMCid;}
23
24 Int_t GetWeight() const {return fWeight;}
25
26 Bool_t ComesFromMainVertex() const {return fFromMainVertex;}
27
28 Int_t GetFirstRow() const {return fRowRange[0];}
29 Int_t GetLastRow() const {return fRowRange[1];}
30 Int_t GetSector() const {return fSector;}
31
8bbc564d 32 Double_t GetFirstPointX() const {return fFirstPoint[0];}
33 Double_t GetFirstPointY() const {return fFirstPoint[1];}
34 Double_t GetFirstPointZ() const {return fFirstPoint[2];}
35 Double_t GetLastPointX() const {return fLastPoint[0];}
36 Double_t GetLastPointY() const {return fLastPoint[1];}
37 Double_t GetLastPointZ() const {return fLastPoint[2];}
482070f2 38
39 Int_t GetCharge() const {return fQ;}
40 Double_t GetPt() const {return fPt;}
41 Double_t GetTgl() const {return fTanl;}
42 Double_t GetPsi() const {return fPsi;}
43
44 Double_t GetPterr() const {return fPterr;}
45 Double_t GetPsierr() const {return fPsierr;}
46 Double_t GetTglerr() const {return fTanlerr;}
47
48 Float_t GetBinX() const {return fBinX;}
49 Float_t GetBinY() const {return fBinY;}
50 Float_t GetSizeX() const {return fSizeX;}
51 Float_t GetSizeY() const {return fSizeY;}
52
faffd83e 53 Double_t GetPx() const {return fPt*TMath::Cos(fPsi);}
54 Double_t GetPy() const {return fPt*TMath::Sin(fPsi);}
482070f2 55 Double_t GetPz() const {return fPt*fTanl;}
56
57 Double_t GetP() const;
58 Double_t GetPseudoRapidity() const;
59
8bbc564d 60 Float_t GetPID() const {return fPID;}
482070f2 61
62 // setters
63 void SetNHits(Int_t f) {fNHits = f;}
64
65 void SetMCid(Int_t f) {fMCid = f;}
66
67 void SetWeight(Int_t f) {fWeight = f;}
68
69 void ComesFromMainVertex(Bool_t f) {fFromMainVertex = f;}
70
71 void SetRowRange(Int_t f,Int_t g) {fRowRange[0]=f; fRowRange[1]=g;}
72 void SetSector(Int_t f) {fSector = f;}
73
74 void SetFirstPoint(Double_t f,Double_t g,Double_t h) {fFirstPoint[0]=f; fFirstPoint[1]=g; fFirstPoint[2]=h;}
75 void SetLastPoint(Double_t f,Double_t g,Double_t h) {fLastPoint[0]=f; fLastPoint[1]=g; fLastPoint[2]=h;}
76
77 void SetCharge(Int_t f) {fQ = f;}
78 void SetTgl(Double_t f) {fTanl =f;}
79 void SetPsi(Double_t f) {fPsi = f;}
80 void SetPt(Double_t f) {fPt = f;}
81
82 void SetPterr(Double_t f) {fPterr = f;}
83 void SetPsierr(Double_t f) {fPsierr = f;}
84 void SetTglerr(Double_t f) {fTanlerr = f;}
85
86 void SetBinXY(Float_t binx,Float_t biny,Float_t sizex,Float_t sizey) {fBinX = binx; fBinY = biny; fSizeX = sizex; fSizeY = sizey;}
87
88 void SetPID(Float_t pid) {fPID = pid;}
89
e819460c 90 Bool_t UpdateTrackParams(const AliKalmanTrack *t);
91
482070f2 92protected:
67bda69e 93 UShort_t fNHits; // Number of assigned clusters
482070f2 94
95 Int_t fMCid; //Assigned id from MC data.
96
67bda69e 97 UShort_t fWeight; //Weight associated to Hough Transform
482070f2 98
99 Bool_t fFromMainVertex; // true if tracks origin is the main vertex, otherwise false
100
101 Int_t fRowRange[2]; //Subsector where this track was build
67bda69e 102 UShort_t fSector; //Sector # where this track was build
482070f2 103
fdf65bb5 104 Float_t fFirstPoint[3]; //First track point in TPC
105 Float_t fLastPoint[3]; //Last track point in TPC
482070f2 106
107 Int_t fQ; //track charge
67bda69e 108 Float_t fTanl; //tan of dipangle
109 Float_t fPsi; //azimuthal angle of the momentum
110 Float_t fPt; //transverse momentum
482070f2 111
fdf65bb5 112 Float_t fPterr; //Pt error
113 Float_t fPsierr; //Psi error
114 Float_t fTanlerr; //Error of Tangent lambda
482070f2 115
fdf65bb5 116 Float_t fBinX; //X bin?
117 Float_t fBinY; //Y bin?
118 Float_t fSizeX; //X size?
119 Float_t fSizeY; //Y size?
482070f2 120
121 Float_t fPID; //so far filled only for conformal mapper tracks
122
e819460c 123 ClassDef(AliESDHLTtrack,3) //ESD HLT track class
482070f2 124};
125
126#endif