]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliTrackFitterKalman.h
Pass event number as argument of AliVEventHandler::BeginEvent
[u/mrichter/AliRoot.git] / STEER / AliTrackFitterKalman.h
CommitLineData
9c4c8863 1#ifndef ALITRACKFITTERKALMAN_H
2#define ALITRACKFITTERKALMAN_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6///////////////////////////////////////////////////////////////////////////////
7//
8// Kalman-Filter-like fit
9// to a straight-line crossing a set of arbitrarily oriented planes.
10// (See AliTrackFitterKalman.cxx for the details)
11//
12// Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
13//
14//////////////////////////////////////////////////////////////////////////////
15
16#include "AliTrackFitter.h"
17
18class AliTrackFitterKalman : public AliTrackFitter {
19public:
57c8a1c2 20 AliTrackFitterKalman() :
21 AliTrackFitter(),
22 fMaxChi2(fgkMaxChi2),
23 fSeed(kFALSE) {}
9c4c8863 24
25 AliTrackFitterKalman(AliTrackPointArray *array, Bool_t owner = kTRUE);
26 virtual ~AliTrackFitterKalman() {}
27
28 void SetMaxChi2(Double_t chi2) {fMaxChi2=chi2;}
29
57c8a1c2 30 void SetSeed(const Double_t par[6], const Double_t cov[15]);
31 Bool_t MakeSeed(const AliTrackPoint *p, const AliTrackPoint *p2);
9c4c8863 32
33 Bool_t GetPCA(const AliTrackPoint &p, AliTrackPoint &p2) const;
34
57c8a1c2 35 Bool_t Begin(Int_t first, Int_t last);
9c4c8863 36 Bool_t AddPoint(const AliTrackPoint *p);
57c8a1c2 37 Bool_t Update() {fSeed=kFALSE; return kTRUE;}
9c4c8863 38
39private:
40 AliTrackFitterKalman(const AliTrackFitterKalman &kalman);
41 AliTrackFitterKalman &operator=(const AliTrackFitterKalman& kalman);
42
43 Bool_t Propagate(const AliTrackPoint *p);
44 Double_t GetPredictedChi2(const AliTrackPoint *p) const;
45 Bool_t Update(const AliTrackPoint *p,Double_t chi2);
57c8a1c2 46
9c4c8863 47
48 static const Double_t fgkMaxChi2; // Default maximal allowed chi2
49
50 Double_t fMaxChi2; // A point is added if chi2 < fMaxChi2
57c8a1c2 51 Bool_t fSeed; // True, if the fitter is already "seeded"
9c4c8863 52
57c8a1c2 53 ClassDef(AliTrackFitterKalman,2) // Kalman-Filter fit to a straight line
9c4c8863 54
55};
56
57#endif