-class AliTPCclusterMI;
-class AliTPCTrackPoint;
-
-
-
-class AliTPCclusterTracks {
- public:
- AliTPCclusterTracks();
- Float_t fDistance[3]; // distance to the 3 nerest track if there overlap with cluster
- Short_t fTrackIndex[3]; // indexes of the tracks overlapped with clusters
-};
-
-class AliTPCseed;
-
-class AliTPCKalmanSegment: public TObject {
- //
- // class to store tracklet parameters
- // needed to probabilistically define track beginning and track end
- public:
- AliTPCKalmanSegment();
- void Init(AliTPCseed* seed); // in initialization initial entrance integral chi2, fNCFoundable and fNC stored
- void Finish(AliTPCseed* seed); // in finish state vector stored and chi2 and fNC... calculated
- void GetState(Double_t &x, Double_t & alpha, Double_t state[5]);
- void GetCovariance(Double_t covariance[15]);
- void GetStatistic(Int_t & nclusters, Int_t & nfoundable, Float_t & chi2);
- private:
- Float_t fX; // x - state
- Float_t fAlpha; // Rotation angle the local (TPC sector)
- Float_t fState[5]; // state vector
- Float_t fChi2; // chi2 - for given tracklet
- Float_t fCovariance[15]; // 15 elements of covariance matrix
- Int_t fNCFoundable; // number of foundable clusters on tracklet (effect of dead zone)
- Int_t fNC; // number of accepted clusters for tracklet
- // Int_t fN; // total number of padrows for given tracklet
- ClassDef(AliTPCKalmanSegment,1)
-};
-
-
-class AliTPCseed : public AliTPCtrack {
- public:
- AliTPCseed();
- virtual ~AliTPCseed();
- AliTPCseed(const AliTPCtrack &t);
- AliTPCseed(const AliKalmanTrack &t, Double_t a);
- Int_t Compare(const TObject *o) const;
- void Reset();
- Int_t GetProlongation(Double_t xr, Double_t &y, Double_t & z) const;
- virtual Double_t GetPredictedChi2(const AliTPCclusterMI *cluster) const;
- virtual Int_t Update(const AliTPCclusterMI* c, Double_t chi2, UInt_t i);
- AliTPCTrackPoint * GetTrackPoint(Int_t i);
- void RebuildSeed(); // rebuild seed to be ready for storing
- AliTPCseed(UInt_t index, const Double_t xx[5],
- const Double_t cc[15], Double_t xr, Double_t alpha);
- void SetClusterIndex(Int_t index){
- fClusterIndex[fRow] = index;
- }
- void SetErrorY2(Float_t sy2){fErrorY2=sy2;}
- void SetErrorZ2(Float_t sz2){fErrorZ2=sz2;}
- void CookdEdx(Double_t low=0.05, Double_t up=0.70);
- Bool_t IsActive(){ return !(fRemoval);}
- void Desactivate(Int_t reason){ fRemoval = reason;}
-
- // Float_t GetRadius(){ return (1-fP2)/fP4;}
- Int_t fRelativeSector; // ! index of current relative sector
- Int_t fClusterIndex[200]; //array of cluster indexes
- Float_t fClusterDensity[16]; //array with cluster densities
-
- Int_t fRemoval; //reason - why was track removed - 0 - means still active
- TClonesArray * fPoints; // array with points along the track
- TClonesArray * fEPoints; // array with exact points - calculated in special macro not used in tracking
- Int_t fRow; //!current row number
- Int_t fSector; //!current sector number
- Float_t fCurrentSigmaY; //!expected current cluster sigma Y
- Float_t fCurrentSigmaZ; //!expected current cluster sigma Z
- AliTPCclusterMI * fCurrentCluster; //!pointer to the current cluster for prolongation
- Int_t fCurrentClusterIndex1; //! index of the current cluster
- Int_t fCurrentClusterIndex2; //! index of the current cluster
-
- Float_t fErrorY2; //!sigma of current cluster
- Float_t fErrorZ2; //!sigma of current cluster
- Int_t fNFoundable; //number of foundable clusters - dead zone taken to the account
- Bool_t fInDead; // indicate if the track is in dead zone
- Int_t fFirstPoint; // first cluster position
- Int_t fLastPoint; // last cluster position
- Int_t fNShared; // number of shared points
- Bool_t fIsSeeding; //indicates if it is proces of seeading
- Bool_t fStopped; // indicate that track cann't be prolongate anymore (for secondaries)
- private:
- Float_t fSdEdx; // sigma of dedx
- Float_t fMAngular; // mean angular factor
- AliTPCTrackPoint ** fTrackPoints; //!track points - array track points
- Float_t fDEDX[4]; // dedx according padrows
- Float_t fSDEDX[4]; // sdedx according padrows
- Int_t fNCDEDX[4]; // number of clusters for dedx measurment
-
- ClassDef(AliTPCseed,1)
-};
-