// ------------------------------------------------------------------------- // Created by M. Al-Turany 06.02.2007 // ------------------------------------------------------------------------- /** ** Parameters (x, y, tx, ty, q/p) of Parabola track */ #ifndef CBMSTSTRACKPARP #define CBMSTSTRACKPARP 1 #include "TVector3.h" #include "CbmTrackPar.h" class CbmTrackParP : public CbmTrackPar { public: /** Constructor **/ CbmTrackParP(); /** Constructor with all track variables **/ CbmTrackParP(Double_t x, Double_t y, Double_t z, Double_t tx, Double_t ty, Double_t qp, Double_t CovMatrix[15]); /** Constructor with position and momentum track **/ CbmTrackParP(TVector3 pos, TVector3 Mom, TVector3 posErr, TVector3 MomErr, Double_t q); /** Destructor **/ virtual ~CbmTrackParP(); /** copy Constructor **/ CbmTrackParP(CbmTrackPar &Trkbase); /** Output to screen **/ void Print(); /** Accessors **/ Double_t GetTx() const { return fTx; }; Double_t GetTy() const { return fTy; }; Double_t GetDTx() const { return fDTx; }; Double_t GetDTy() const { return fDTy; }; Double_t *GetCov(){return fCovMatrix;}; /** Modifiers **/ void SetTx(Double_t tx) { fTx = tx; }; void SetTy(Double_t ty) { fTy = ty; }; virtual Double_t GetDX() ; virtual Double_t GetDY() ; virtual Double_t GetDZ() ; virtual Double_t GetDPx() ; virtual Double_t GetDPy() ; virtual Double_t GetDPz() ; virtual Double_t GetDQp() ; void GetCov(Double_t *Cov) {for(Int_t i=0;i<15;i++) Cov[i]=fCovMatrix[i];} void SetTrackPar(Double_t X, Double_t Y, Double_t Z, Double_t Px, Double_t Py, Double_t Pz, Double_t Q, Double_t CovMatrix[15]); void Reset(); private: /** Direction of track tx = dx/dz; ty = dy/dz **/ Double_t fTx, fTy; /** Error in directions*/ Double_t fDTx, fDTy; /** Covariant matrix*/ Double_t fCovMatrix[15]; /** calculate the cov. matrix*/ void CalCov(); ClassDef(CbmTrackParP,1); }; #endif