#ifndef AliHLTTPCTopoReconstructor_H #define AliHLTTPCTopoReconstructor_H /* * Interface class for use KFParticle Topology Reconstructor */ #include "KFPTopoReconstructor.h" #include "KFPTrack.h" #include class AliHLTTPCCAGBTracker; class AliHLTTPCCATrackParam; class KFParticle; class KFParticleSIMD; class AliHLTTPCTopoReconstructor{ public: AliHLTTPCTopoReconstructor(){ fKFPTopoReconstructor = new KFPTopoReconstructor; }; ~AliHLTTPCTopoReconstructor(); void Init(AliHLTTPCCAGBTracker* 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: AliHLTTPCTopoReconstructor &operator=(AliHLTTPCTopoReconstructor &); AliHLTTPCTopoReconstructor(AliHLTTPCTopoReconstructor &); 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 AliHLTTPCTopoPerformance; #endif vector fRTrackIds; // id of reco tracks in GBTracker indiced by id of tracks in KFPTopoReconstructor. Need for performance vector fChiToPrimVtx; vector fParticles; }; // class AliHLTTPCTopoReconstructor #endif // AliHLTTPCTopoReconstructor_H