Merge branch 'master' into TPCdev
[u/mrichter/AliRoot.git] / STEER / STEER / AliTrackFitterStraight.h
CommitLineData
cc345ce3 1#ifndef ALITRACKFITTERSTRAIGHT_H
2#define ALITRACKFITTERSTRAIGHT_H
3
4#include "AliTrackFitter.h"
5
6class AliTrackFitterStraight : public AliTrackFitter{
7 public:
8 AliTrackFitterStraight();
9 AliTrackFitterStraight(AliTrackPointArray *array, Bool_t owner = kTRUE);
10 AliTrackFitterStraight(const AliTrackFitterStraight &fitter);
11 AliTrackFitterStraight &operator =(const AliTrackFitterStraight& fitter);
12 virtual ~AliTrackFitterStraight();
13
14 Bool_t Fit(const TArrayI *volIdx,const TArrayI *volIdsFit = 0x0,
25be1e5c 15 AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
16 AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer);
cc345ce3 17 Bool_t GetPCA(const AliTrackPoint &p, AliTrackPoint &p2) const;
18
19 void Reset();
20 void AddPoint(Float_t x, Float_t y, Float_t z, Float_t sy, Float_t sz);
9c4c8863 21 Bool_t Update();
cc345ce3 22
23 // Double_t GetC();
24 Double_t GetYat(Double_t x) const;
25 Double_t GetZat(Double_t x) const;
26 Double_t GetDYat(Double_t x) const;
27 Double_t GetDZat(Double_t x) const;
28 Bool_t GetXYZat(Double_t r, Float_t *xyz) const;
29
30 protected:
31
32 Double_t fAlpha; //angle to transform to the fitting coordinate system
33 Double_t fSumXY[5]; //sums for XY part
34 Double_t fSumYY; //sum for YY part
35 Double_t fSumXZ[5]; //sums for XZ part
36 Double_t fSumZZ; //sum for ZZ part
37 Int_t fNUsed; //actual number of space-points used in the fit
38 Bool_t fConv; // indicates convergation
39
40 private:
57c8a1c2 41 Bool_t Begin(Int_t, Int_t) {Reset(); return kTRUE;}
9c4c8863 42 Bool_t AddPoint(const AliTrackPoint *) {return kTRUE;}
cc345ce3 43
44 ClassDef(AliTrackFitterStraight,1) // Fast fit of straight tracks
45
46};
47
48#endif