]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - HLT/hough/AliL3HoughTrack.h
- check for AliRoot features/libs/files and corresponding conditional
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughTrack.h
... / ...
CommitLineData
1// @(#) $Id$
2
3#ifndef ALIL3HOUGHTRACK_H
4#define ALIL3HOUGHTRACK_H
5
6#include "AliL3Track.h"
7
8class AliL3HoughTrack : public AliL3Track {
9
10 public:
11 AliL3HoughTrack();
12 virtual ~AliL3HoughTrack();
13
14 virtual void Set(AliL3Track *track);
15 virtual Int_t Compare(const AliL3Track *track) const;
16
17 Bool_t IsHelix() const {return fIsHelix;}
18 void UpdateToFirstRow();
19 void SetTrackParameters(Double_t kappa,Double_t eangle,Int_t weight);
20 void SetTrackParametersRow(Double_t alpha1,Double_t alpha2,Double_t eta,Int_t weight);
21 void SetLineParameters(Double_t psi,Double_t D,Int_t weight,Int_t *rowrange,Int_t refrow);
22
23 Int_t GetWeight() const {return fWeight;}
24 Double_t GetPsiLine() const {return fPsiLine;}
25 Double_t GetDLine() const {return fDLine;}
26
27 Int_t GetEtaIndex() const {return fEtaIndex;}
28 Double_t GetEta() const {return fEta;}
29 Int_t GetSlice() const {return fSlice;}
30 void GetLineCrossingPoint(Int_t padrow,Float_t *xy);
31
32 Float_t GetBinX() const {return fBinX;}
33 Float_t GetBinY() const {return fBinY;}
34 Float_t GetSizeX() const {return fSizeX;}
35 Float_t GetSizeY() const {return fSizeY;}
36
37 void SetHelixTrue() {fIsHelix=kTRUE;}
38 void SetSlice(Int_t slice) {fSlice=slice;}
39 void SetEta(Double_t f);
40 void SetWeight(Int_t i,Bool_t update=kFALSE) {if(update) fWeight+= i; else fWeight = i;}
41 void SetEtaIndex(Int_t f) {fEtaIndex = f;}
42 void SetBestMCid(Int_t f,Double_t mindist);
43 void SetDLine(Double_t f) {fDLine=f;}
44 void SetPsiLine(Double_t f) {fPsiLine=f;}
45
46 void SetBinXY(Float_t binx,Float_t biny,Float_t sizex,Float_t sizey) {fBinX = binx; fBinY = biny; fSizeX = sizex; fSizeY = sizey;}
47
48 private:
49
50 Double_t fMinDist;//Minimum distance to a generated track while associating mc label
51 Int_t fWeight;//Track weight
52 Int_t fEtaIndex;//Eta slice index
53 Double_t fEta;//Track Eta
54 Int_t fSlice; //The slice where this track was found
55
56 Double_t fDLine;//??
57 Double_t fPsiLine;//??
58
59 Bool_t fIsHelix;//Is the track helix or not?
60
61 Float_t fBinX,fBinY,fSizeX,fSizeY;//Size and position of the hough space peak
62
63 ClassDef(AliL3HoughTrack,1) //Track class for Hough tracklets
64
65};
66
67#endif