]>
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; | |
186e6ced | 34 | void SetMaxDelta(Float_t maxDelta) { fMaxDelta = maxDelta;} |
35 | Float_t GetMaxDelta() const { return fMaxDelta;} | |
98937d93 | 36 | |
37 | void Reset(); | |
38 | void AddPoint(Float_t x, Float_t y, Float_t z, Float_t sy, Float_t sz); | |
39 | void Update(); | |
40 | ||
1501484e | 41 | Double_t GetC() const {return fRieman->GetC();} |
8849da04 | 42 | Double_t GetYat(Double_t x) const {return fRieman->GetYat(x);} |
43 | Double_t GetZat(Double_t x) const {return fRieman->GetZat(x);} | |
44 | Double_t GetDYat(Double_t x) const {return fRieman->GetDYat(x);} | |
45 | Double_t GetDZat(Double_t x) const {return fRieman->GetDZat(x);} | |
46 | Bool_t GetXYZat(Double_t r, Float_t *xyz) const {return fRieman->GetXYZat(r, fAlpha,xyz);} | |
47 | AliRieman *GetRieman() const {return fRieman;} | |
98937d93 | 48 | protected: |
49 | ||
50 | Double_t fAlpha; //angle to transform to the fitting coordinate system | |
46ae650f | 51 | Int_t fNUsed; //actual number of space-points used in the fit |
8849da04 | 52 | Bool_t fConv; //indicates convergation |
186e6ced | 53 | Float_t fMaxDelta; // maximal allowed delta in PCA exported for PCA minimization |
8849da04 | 54 | AliRieman *fRieman; // rieman fitter |
98937d93 | 55 | private: |
8849da04 | 56 | TTreeSRedirector *fDebugStream; //!debug streamer |
186e6ced | 57 | ClassDef(AliTrackFitterRieman,2) // Fast fit of helices on ITS RecPoints |
98937d93 | 58 | |
59 | }; | |
60 | ||
61 | #endif |