Moved from AliTransbit to AliL3Transbit.
[u/mrichter/AliRoot.git] / HLT / comp / AliL3ModelTrack.h
CommitLineData
735e167e 1#ifndef AliL3Model_Track
2#define AliL3Model_Track
3
4#include "AliL3Track.h"
95a00d93 5#include "AliL3Models.h"
92a876e2 6
735e167e 7class AliL3ModelTrack : public AliL3Track {
8
9 private:
10
11 Short_t fClusterCharge; //Average cluster charge
95a00d93 12 AliL3ClusterModel *fClusters; //!
13 AliL3TrackModel *fTrackModel; //!
735e167e 14 Short_t fNClusters;
029912b7 15 Int_t *fOverlap; //!
95a00d93 16 Float_t fXYResidualQ; //Quantization steps.
17 Float_t fZResidualQ;
029912b7 18 Float_t fXYResolution;
19 Float_t fZResolution;
20 Float_t fXYWidthQ;
21 Float_t fZWidthQ;
22 Int_t fSlice;
23 Int_t fPatch;
8487f697 24 Int_t fLabel;
95a00d93 25
735e167e 26 //Crossing points with padrows
27 Float_t *fPad; //!
28 Float_t *fTime; //!
29
30 public:
31 AliL3ModelTrack();
32 virtual ~AliL3ModelTrack();
33
34 void Init(Int_t slice,Int_t patch);
4a838220 35 void SetCluster(Int_t row,Float_t dpad,Float_t dtime,Float_t charge,Float_t sigmaY2,Float_t sigmaZ2,Int_t npads);
95a00d93 36 void FillModel();
029912b7 37 void FillTrack();
95a00d93 38 void Print();
8487f697 39 void AssignTrackID(Float_t wrong=0.10);
735e167e 40
8487f697 41 void SetTrackID(Int_t row,Int_t *trackID);
029912b7 42 void SetPadHit(Int_t row,Float_t f);
43 void SetTimeHit(Int_t row,Float_t f);
44 void SetOverlap(Int_t row,Int_t id);
45 void SetXYResolution(Float_t f) {fXYResolution=f;}
46 void SetZResolution(Float_t f) {fZResolution=f;}
8487f697 47 void SetLabel(Int_t i) {fLabel = i;}
4a838220 48 Int_t CheckClustersQuality(UInt_t npads=3);
735e167e 49
8487f697 50
51 Int_t GetTrackID(Int_t row,Int_t idindex);
95a00d93 52 AliL3ClusterModel *GetClusters() {return fClusters;}
95a00d93 53 AliL3TrackModel *GetModel() {return fTrackModel;}
029912b7 54 AliL3ClusterModel *GetClusterModel(Int_t row);
55 Int_t GetOverlap(Int_t row);
4a838220 56 Int_t GetNPads(Int_t row);
029912b7 57 Float_t GetPadHit(Int_t row);
58 Float_t GetTimeHit(Int_t row);
59 Bool_t GetPad(Int_t row,Float_t &pad);
60 Bool_t GetTime(Int_t row,Float_t &time);
61 Bool_t GetClusterCharge(Int_t row,Int_t &charge);
62 Bool_t GetXYWidth(Int_t row,Float_t &width);
63 Bool_t GetZWidth(Int_t row,Float_t &width);
95a00d93 64 Bool_t GetPadResidual(Int_t row,Float_t &res);
65 Bool_t GetTimeResidual(Int_t row,Float_t &res);
4a838220 66 Bool_t GetXYWidthResidual(Int_t row,Float_t &res);
67 Bool_t GetZWidthResidual(Int_t row,Float_t &res);
95a00d93 68 Int_t GetNClusters() {return fNClusters;}
8487f697 69 Int_t GetLabel() {return fLabel;}
70
92a876e2 71 Double_t GetParSigmaY2(Int_t row);
72 Double_t GetParSigmaZ2(Int_t row);
95a00d93 73
735e167e 74 ClassDef(AliL3ModelTrack,1)
75
76};
77
78#endif