]>
Commit | Line | Data |
---|---|---|
98937d93 | 1 | #ifndef ALITRACKFITTERRIEMAN_H |
2 | #define ALITRACKFITTERRIEMAN_H | |
6b6cba33 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
98937d93 | 5 | |
6b6cba33 | 6 | /* $Id$ */ |
7 | ||
8 | /////////////////////////////////////////////////////////////////////////////// | |
9 | // | |
10 | // Class to the track points on the Riemann sphere. Inputs are | |
11 | // the set of id's (volids) of the volumes in which residuals are | |
12 | // calculated to construct a chi2 function to be minimized during | |
13 | // the alignment procedures | |
14 | // | |
15 | ////////////////////////////////////////////////////////////////////////////// | |
98937d93 | 16 | |
17 | #include "AliTrackFitter.h" | |
8849da04 | 18 | #include "AliRieman.h" |
19 | class TTreeSRedirector; | |
20 | class AliRieman; | |
98937d93 | 21 | |
22 | class AliTrackFitterRieman : public AliTrackFitter{ | |
23 | public: | |
24 | AliTrackFitterRieman(); | |
25 | AliTrackFitterRieman(AliTrackPointArray *array, Bool_t owner = kTRUE); | |
26 | AliTrackFitterRieman(const AliTrackFitterRieman &rieman); | |
27 | AliTrackFitterRieman &operator =(const AliTrackFitterRieman& rieman); | |
8849da04 | 28 | virtual ~AliTrackFitterRieman(); |
98937d93 | 29 | |
cc345ce3 | 30 | Bool_t Fit(const TArrayI *volIds,const TArrayI *volIdsFit = 0x0, |
98937d93 | 31 | AliAlignObj::ELayerID layerRangeMin = AliAlignObj::kFirstLayer, |
32 | AliAlignObj::ELayerID layerRangeMax = AliAlignObj::kLastLayer); | |
33 | Bool_t GetPCA(const AliTrackPoint &p, AliTrackPoint &p2) const; | |
34 | ||
35 | void Reset(); | |
36 | void AddPoint(Float_t x, Float_t y, Float_t z, Float_t sy, Float_t sz); | |
37 | void Update(); | |
38 | ||
1501484e | 39 | Double_t GetC() const {return fRieman->GetC();} |
8849da04 | 40 | Double_t GetYat(Double_t x) const {return fRieman->GetYat(x);} |
41 | Double_t GetZat(Double_t x) const {return fRieman->GetZat(x);} | |
42 | Double_t GetDYat(Double_t x) const {return fRieman->GetDYat(x);} | |
43 | Double_t GetDZat(Double_t x) const {return fRieman->GetDZat(x);} | |
44 | Bool_t GetXYZat(Double_t r, Float_t *xyz) const {return fRieman->GetXYZat(r, fAlpha,xyz);} | |
45 | AliRieman *GetRieman() const {return fRieman;} | |
98937d93 | 46 | protected: |
47 | ||
48 | Double_t fAlpha; //angle to transform to the fitting coordinate system | |
46ae650f | 49 | Int_t fNUsed; //actual number of space-points used in the fit |
8849da04 | 50 | Bool_t fConv; //indicates convergation |
51 | AliRieman *fRieman; // rieman fitter | |
98937d93 | 52 | private: |
8849da04 | 53 | TTreeSRedirector *fDebugStream; //!debug streamer |
98937d93 | 54 | ClassDef(AliTrackFitterRieman,1) // Fast fit of helices on ITS RecPoints |
55 | ||
56 | }; | |
57 | ||
58 | #endif |