]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliTrackFitterKalman.h
Avoiding memory problems.
[u/mrichter/AliRoot.git] / STEER / AliTrackFitterKalman.h
index d5c41929aab9a96377aa46b91e4360576d4a402d..ae39197f2f5deaaf4349c7e645b75571d3f097c5 100755 (executable)
 
 class AliTrackFitterKalman : public AliTrackFitter {
 public:
-  AliTrackFitterKalman() : AliTrackFitter(), fMaxChi2(fgkMaxChi2) {}
+  AliTrackFitterKalman() : 
+     AliTrackFitter(), 
+     fMaxChi2(fgkMaxChi2),
+     fSeed(kFALSE) {}
 
   AliTrackFitterKalman(AliTrackPointArray *array, Bool_t owner = kTRUE);
   virtual ~AliTrackFitterKalman() {}
 
   void SetMaxChi2(Double_t chi2) {fMaxChi2=chi2;}
 
-  void SetSeed(const Double_t par[6], const Double_t cov[15]);
-  void MakeSeed(const AliTrackPoint *p, const AliTrackPoint *p2);
+  void   SetSeed(const Double_t par[6], const Double_t cov[15]);
+  Bool_t MakeSeed(const AliTrackPoint *p, const AliTrackPoint *p2);
 
   Bool_t GetPCA(const AliTrackPoint &p, AliTrackPoint &p2) const;
 
+  Bool_t Begin(Int_t first, Int_t last);
   Bool_t AddPoint(const AliTrackPoint *p);
+  Bool_t Update() {fSeed=kFALSE; return kTRUE;}
 
 private:
   AliTrackFitterKalman(const AliTrackFitterKalman &kalman);
@@ -38,13 +43,14 @@ private:
   Bool_t Propagate(const AliTrackPoint *p);
   Double_t GetPredictedChi2(const AliTrackPoint *p) const;
   Bool_t Update(const AliTrackPoint *p,Double_t chi2);
-  Bool_t Update() {return kTRUE;}
+
 
   static const Double_t fgkMaxChi2;  // Default maximal allowed chi2 
 
   Double_t fMaxChi2;                 // A point is added if chi2 < fMaxChi2 
+  Bool_t   fSeed;                    // True, if the fitter is already "seeded" 
 
-  ClassDef(AliTrackFitterKalman,1)   // Kalman-Filter fit to a straight line
+  ClassDef(AliTrackFitterKalman,2)   // Kalman-Filter fit to a straight line
 
 };