]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/hough/AliL3HoughTrack.h
Merged Bergen, mergen Cvetan TransformerRow and
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughTrack.h
CommitLineData
3e87ef69 1// @(#) $Id$
2
d712b5b8 3#ifndef ALIL3_HOUGH_Track
4#define ALIL3_HOUGH_Track
5
6#include "AliL3Track.h"
7
d712b5b8 8class AliL3HoughTrack : public AliL3Track {
9
10 private:
237d3f5c 11
d712b5b8 12 Double_t fMinDist;
13 Int_t fWeight;
14 Int_t fEtaIndex;
15 Double_t fEta;
b1886074 16 Int_t fSlice; //The slice where this track was found
d712b5b8 17
18 Double_t fDLine;
19 Double_t fPsiLine;
20
21 Bool_t fIsHelix;
22
de3c3890 23 Float_t fBinX,fBinY,fSizeX,fSizeY;
24
d712b5b8 25 public:
26 AliL3HoughTrack();
27 virtual ~AliL3HoughTrack();
28
29 virtual void Set(AliL3Track *track);
30 virtual Int_t Compare(const AliL3Track *track) const;
d712b5b8 31
3e87ef69 32 Bool_t IsHelix() {return fIsHelix;}
d712b5b8 33 void UpdateToFirstRow();
b46b53c1 34 void SetTrackParameters(Double_t kappa,Double_t eangle,Int_t weight);
d712b5b8 35 void SetLineParameters(Double_t psi,Double_t D,Int_t weight,Int_t *rowrange,Int_t ref_row);
b1886074 36
d712b5b8 37 Int_t GetWeight() const {return fWeight;}
38 Double_t GetPsiLine() const {return fPsiLine;}
39 Double_t GetDLine() const {return fDLine;}
40
41 Int_t GetEtaIndex() const {return fEtaIndex;}
42 Double_t GetEta() const {return fEta;}
b1886074 43 Int_t GetSlice() const {return fSlice;}
3e87ef69 44 void GetLineCrossingPoint(Int_t padrow,Float_t *xy);
de3c3890 45
46 Float_t GetBinX() const {return fBinX;}
47 Float_t GetBinY() const {return fBinY;}
48 Float_t GetSizeX() const {return fSizeX;}
49 Float_t GetSizeY() const {return fSizeY;}
3e87ef69 50
51 void SetHelixTrue() {fIsHelix=kTRUE;}
b1886074 52 void SetSlice(Int_t slice) {fSlice=slice;}
d712b5b8 53 void SetEta(Double_t f);
54 void SetWeight(Int_t i,Bool_t update=kFALSE) {if(update) fWeight+= i; else fWeight = i;}
55 void SetEtaIndex(Int_t f) {fEtaIndex = f;}
56 void SetBestMCid(Int_t f,Double_t min_dist);
57 void SetDLine(Double_t f) {fDLine=f;}
58 void SetPsiLine(Double_t f) {fPsiLine=f;}
59
de3c3890 60 void SetBinXY(Float_t binx,Float_t biny,Float_t sizex,Float_t sizey) {fBinX = binx; fBinY = biny; fSizeX = sizex; fSizeY = sizey;}
61
b1886074 62 ClassDef(AliL3HoughTrack,1) //Track class for Hough tracklets
d712b5b8 63
64};
65
66#endif