#ifndef PndFTSTopoReconstructor_H #define PndFTSTopoReconstructor_H /* * Interface class for use KFParticle Topology Reconstructor */ #include "KFPTopoReconstructor.h" #include "KFPTrack.h" #include class PndFTSCAGBTracker; class PndFTSCATrackParam; class KFParticle; class KFParticleSIMD; class PndFTSTopoReconstructor{ public: PndFTSTopoReconstructor(){ fKFPTopoReconstructor = new KFPTopoReconstructor; }; ~PndFTSTopoReconstructor(); void Init(PndFTSCAGBTracker* tracker); // init array of particles void ReconstructPrimVertex(); // find primary vertex void ReconstructParticles(); //find short-lived particles /// Accessors KFParticle &GetPrimVertex() const { return fKFPTopoReconstructor->GetPrimVertex(); }; vector const &GetParticles() const { return fParticles; } vector const &GetTracks() const { return tmpTracks; } vector const &GetRTrackIds() const { return fRTrackIds; } vector const &GetChiPrim() const { return fChiToPrimVtx; } private: PndFTSTopoReconstructor &operator=(PndFTSTopoReconstructor &); PndFTSTopoReconstructor(PndFTSTopoReconstructor &); void GetChiToPrimVertex(vector& tracks, KFParticleSIMD& pv, vector& chi); KFPTopoReconstructor* fKFPTopoReconstructor; std::vector tmpTracks; std::vector tmpGbTracks; //pointer to the tracks in tracker #ifdef DO_TPCCATRACKER_EFF_PERFORMANCE friend class PndFTSTopoPerformance; #endif vector fRTrackIds; // id of reco tracks in GBTracker indiced by id of tracks in KFPTopoReconstructor. Need for performance vector fChiToPrimVtx; vector fParticles; }; // class PndFTSTopoReconstructor #endif // PndFTSTopoReconstructor_H