]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliTrackResiduals.h
Additional functionality. Access to the objects containing histograms when the file...
[u/mrichter/AliRoot.git] / STEER / AliTrackResiduals.h
CommitLineData
98937d93 1#ifndef ALITRACKRESIDUALS_H
2#define ALITRACKRESIDUALS_H
3
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//************************************************************************
13
14#include "TObject.h"
15
16class AliAlignObj;
17class AliTrackPointArray;
18
19class AliTrackResiduals : public TObject {
20
21 public:
22
23 AliTrackResiduals();
24 AliTrackResiduals(Int_t ntracks, AliAlignObj *alignobj);
25 AliTrackResiduals(const AliTrackResiduals &res);
26 AliTrackResiduals& operator= (const AliTrackResiduals& res);
27 virtual ~AliTrackResiduals();
28
29 void SetNTracks(Int_t ntracks);
30 void SetAlignObj(AliAlignObj *alignobj) { fAlignObj = alignobj; }
31 Bool_t AddTrackPointArrays(AliTrackPointArray *volarray, AliTrackPointArray *trackarray);
32
33 virtual Bool_t Minimize() = 0;
34
35 Int_t GetNTracks() const { return fN; }
36 Int_t GetNFilledTracks() const { return fLast; }
37 Bool_t GetTrackPointArrays(Int_t i, AliTrackPointArray* &volarray, AliTrackPointArray* &trackarray) const;
38 AliAlignObj *GetAlignObj() const { return fAlignObj; }
39
40 protected:
41
42 void DeleteTrackPointArrays();
43
44 Int_t fN; // Number of tracks
45 Int_t fLast; // Index of the last filled track arrays
46 AliAlignObj *fAlignObj; // Pointer to the volume alignment object to be fitted
47 AliTrackPointArray **fVolArray; //! Pointers to the arrays containing space points
48 AliTrackPointArray **fTrackArray; //! Pointers to the arrays containing track extrapolation points
49 Bool_t fIsOwner; // Track point arrays owned by the object
50
51 ClassDef(AliTrackResiduals,1)
52
53};
54
55#endif