/** * \file TrkLevel2.h * \author Elena Vannuccini */ #ifndef trklevel2_h #define trklevel2_h #include #include #include #include /** * \brief Class to describe, by points, a particle trajectory in the apparatus. * * The idea is to create it by integrating the equations of motion, given the * track state vector and the z coordinates where to evaluate track position. */ // ================================================================== class Trajectory : public TObject{ private: public: int npoint; ///< number of evaluated points along the trajectory float* x; ///< x coordinates float* y; ///< y coordinates float* z; ///< z coordinates Trajectory(){npoint=1; x = new float; y = new float; z = new float; return;}; Trajectory(int n); Trajectory(int n, float* pz); void Dump(); ClassDef(Trajectory,1); }; /** * \brief Class to describe fitted tracks. * * A track is defined by the measured coordinates associated to it, the * track status vector, plus other quantities. * A track may have an "image", due to the ambiguity in the y view. */ // ================================================================== class TrkTrack : public TObject { private: public: float al[5]; ///GetEntries();} ///< number of stored track int nclsx(){return SingletX->GetEntries();} ///< number of x singlets int nclsy(){return SingletY->GetEntries();} ///< number of y singlets void Dump(); void FillCommonVar(cTrkLevel2 *); void Clear(); void LoadField(TString); TrkTrack *GetStoredTrack(int i); TClonesArray *GetTracks(); int GetNTracks(){return this->GetTracks()->GetEntries();} TrkTrack* GetTrack(int i); TrkTrack* GetTrackImage(int i); TrkLevel2* GetTrkLevel2(){return this;} ClassDef(TrkLevel2,1); }; #endif