class CbmMvdProtoTrack:TObject{ public: CbmMvdProtoTrack(); CbmMvdProtoTrack(TClonesArray* myHitBuffer, Int_t nHit1); Bool_t TryHitFast(UInt_t nHit); /** * Tests if the hit can be associated to the track accounting for validity of * the hit and the time. * Returns kTRUE if possible, kFALSE otherwise * Error messages are generated if hit is not valid or already associated. **/ Double_t TryHit(CbmMvdProtoHit* hit); /** * Tests if the hit may belong to this track (see TryHitFast). Returns the chiSquare * between current track extrapolation and the hit position **/ Bool_t AddHit(CbmMvdProtoHit* hit); /** * Adds hit to the track, recomputes track parameters **/ Bool_t AddFirstHit(CbmMvdProtoHit* hit); /** * Adds first hit to the track. Assumes track parallel to the z-axis without check. * Resets hit array if not empty **/ Bool_t AddSecondHit(CbmMvdProtoHit* hit); /** * Adds second hit. Computes track parameters as straight line between both hits **/ void RecomputeParameters(); /** * Recomputes track parameters based on current set of hits. **/ Bool_t ComputeResiduals(nStation, Double_t* residuals); /** * Computes residuals of the track at a certain station. * Returns Double_t* residuals={x,y} * Returns kTRUE if hit from the station is part of this track * Returns kFALSE if no hit from the mentioned station is associated to this track **/ Extrapolate (Double_t z, Double_t* extrapolatedCoordinates, Double_t* dCoordinates); /** * Estimates the track position at a certain z-coordinate * Note: z-coordinate is along beam axis **/ Int_t GetHitFromStation(UInt_t nStation); /** * Provides the number of the hit in fMyHitBuffer, * which belongs to station nStation. * Output = -1 if no hit for this station. * Assumes only one hit per station without check **/ Double_t GetX0(){return fX0;} Double_t GetY0(){return fY0;} Double_t GetTX(){return fTx;} Double_t GetTY(){return fTy;} Double_t GetChiSquare() {return fChiSquare;} Double_t GetChiPerNDF(); protected: vector fHitArray; // Index of Hits associated to this track Double_t fTx,fTy,fX0,fY0, fZ0, fdTx,fdTy, fdX0, fdY0, fdZ0, ftMin, ftMax, fChiSquare; TClonesArray* fMyHitBuffer; // Pointer to an external buffer holding the hit information