1 #ifndef ALITRACKRESIDUALS_H
2 #define ALITRACKRESIDUALS_H
4 //************************************************************************
5 // AliTrackResiduals: base class for collecting the track space point *
6 // residuals produced by the fast track fitters (AliTrackFitter class). *
7 // It provides an interface to the arrays which contain the space points *
8 // and track extrapolation points within the detector volume to be *
9 // aligned. The derived classes should implement method to analyze the *
10 // track residuals and minimize their sum in order to get the *
11 // AliAlignObj for the given detector volume. *
12 //************************************************************************
16 #include "AliAlignObjAngles.h"
18 class AliTrackPointArray;
20 class AliTrackResiduals : public TObject {
25 AliTrackResiduals(Int_t ntracks);
26 AliTrackResiduals(const AliTrackResiduals &res);
27 AliTrackResiduals& operator= (const AliTrackResiduals& res);
28 virtual ~AliTrackResiduals();
30 void SetNTracks(Int_t ntracks);
31 Bool_t AddTrackPointArrays(AliTrackPointArray *volarray, AliTrackPointArray *trackarray);
32 void SetAlignObj(AliAlignObj *alignobj);
34 virtual Bool_t Minimize() = 0;
36 Int_t GetNTracks() const { return fN; }
37 Int_t GetNFilledTracks() const { return fLast; }
38 Bool_t GetTrackPointArrays(Int_t i, AliTrackPointArray* &volarray, AliTrackPointArray* &trackarray) const;
39 AliAlignObj *GetAlignObj() const { return fAlignObj; }
40 Float_t GetChi2() const { return fChi2; }
41 Int_t GetNdf() const { return fNdf; }
45 void DeleteTrackPointArrays();
47 Int_t fN; // Number of tracks
48 Int_t fLast; // Index of the last filled track arrays
49 AliAlignObj *fAlignObj; // Pointer to the volume alignment object to be fitted
50 AliTrackPointArray **fVolArray; //! Pointers to the arrays containing space points
51 AliTrackPointArray **fTrackArray; //! Pointers to the arrays containing track extrapolation points
52 Float_t fChi2; // Chi2 (or distance) of residuals minimization
53 Int_t fNdf; // Number of degrees of freedom
54 Bool_t fIsOwner; // Track point arrays owned by the object
56 ClassDef(AliTrackResiduals,1)