TClonesArrays deleted correctly
[u/mrichter/AliRoot.git] / STEER / AliKalmanTrack.h
CommitLineData
87594435 1#ifndef ALIKALMANTRACK_H
2#define ALIKALMANTRACK_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7//-------------------------------------------------------------------------
8// Class AliKalmanTrack
9//
10// Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
11//-------------------------------------------------------------------------
12
13#include <TObject.h>
14
15class AliCluster;
16
17class AliKalmanTrack : public TObject {
18public:
be9c5115 19 AliKalmanTrack() {fLab=-3141593; fChi2=0; fN=0;}
20 AliKalmanTrack(const AliKalmanTrack &t) {fLab=t.fLab;fChi2=t.fChi2;fN=t.fN;}
21 virtual ~AliKalmanTrack(){};
22 void SetLabel(Int_t lab) {fLab=lab;}
23
24 Bool_t IsSortable() const {return kTRUE;}
25 Int_t GetLabel() const {return fLab;}
26 Double_t GetChi2() const {return fChi2;}
27 Int_t GetNumberOfClusters() const {return fN;}
28 virtual Int_t GetClusterIndex(Int_t i) const { //reserved for AliTracker
29 printf("AliKalmanTrack::GetClusterIndex(Int_t i) must be overloaded !\n");
30 return 0;
31 }
32
33 virtual Int_t Compare(const TObject *o) const=0;
34
35 virtual void GetExternalParameters(Double_t &xr, Double_t x[5]) const=0;
36 virtual void GetExternalCovariance(Double_t cov[15]) const=0;
37
38 virtual Double_t GetPredictedChi2(const AliCluster *cluster) const=0;
39 virtual
40 Int_t PropagateTo(Double_t xr,Double_t x0,Double_t rho,Double_t pm)=0;
41 virtual Int_t Update(const AliCluster* c, Double_t chi2, UInt_t i)=0;
42
43protected:
44 void SetChi2(Double_t chi2) {fChi2=chi2;}
45 void SetNumberOfClusters(Int_t n) {fN=n;}
46
47private:
87594435 48 Int_t fLab; // track label
87594435 49 Double_t fChi2; // total chi2 value for this track
be9c5115 50 Int_t fN; // number of associated clusters
87594435 51
52 ClassDef(AliKalmanTrack,1) // Reconstructed track
53};
54
55#endif
56
57