Minor updates
[u/mrichter/AliRoot.git] / HLT / comp / AliL3ModelTrack.h
... / ...
CommitLineData
1#ifndef AliL3Model_Track
2#define AliL3Model_Track
3
4#include "AliL3Track.h"
5#include "AliL3Models.h"
6
7class AliL3ModelTrack : public AliL3Track {
8
9 private:
10
11 Short_t fClusterCharge; //Average cluster charge
12 AliL3ClusterModel *fClusters; //!
13 AliL3TrackModel *fTrackModel; //!
14 Short_t fNClusters;
15 Int_t fOverlap;
16 Float_t fXYResidualQ; //Quantization steps.
17 Float_t fZResidualQ;
18
19 //Crossing points with padrows
20 Float_t *fPad; //!
21 Float_t *fTime; //!
22
23 public:
24 AliL3ModelTrack();
25 virtual ~AliL3ModelTrack();
26
27 void Init(Int_t slice,Int_t patch);
28 void SetCluster(Float_t dpad,Float_t dtime,Float_t charge,Float_t sigmaY2,Float_t sigmaZ2);
29 void FillModel();
30 void Print();
31
32 void SetPadHit(Int_t row,Float_t f) {fPad[row]=f;}
33 void SetTimeHit(Int_t row,Float_t f) {fTime[row]=f;}
34 void SetOverlap(Int_t i) {fOverlap=i;}
35
36 AliL3ClusterModel *GetClusters() {return fClusters;}
37 AliL3ClusterModel *GetClusterModel(Int_t i) {if(!fClusters) return 0; return &fClusters[i];}
38 AliL3TrackModel *GetModel() {return fTrackModel;}
39 Int_t GetOverlap() {return fOverlap;}
40 Float_t GetPadHit(Int_t row) {return fPad[row];}
41 Float_t GetTimeHit(Int_t row) {return fTime[row];}
42 Bool_t GetPadResidual(Int_t row,Float_t &res);
43 Bool_t GetTimeResidual(Int_t row,Float_t &res);
44 Int_t GetNClusters() {return fNClusters;}
45
46 Double_t GetParSigmaY2(Double_t r);
47 Double_t GetParSigmaZ2(Double_t r);
48
49 ClassDef(AliL3ModelTrack,1)
50
51};
52
53#endif