//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Conformal mapping track finder // // // Environment: // Software developed for the PANDA Detector at FAIR. // // Author List: // Sebastian Neubert TUM (original author) // // //----------------------------------------------------------- #ifndef TPCCONFTRACKFINDER_HH #define TPCCONFTRACKFINDER_HH // Base Class Headers ---------------- // Collaborating Class Headers ------- #include // remove if you do not need streaming op #include // Collaborating Class Declarations -- class TpcCluster; class TrackCand; class TClonesArray; class TpcConfMapRecoHit; class Track; class TpcConfTrackFinder { public: // Constructors/Destructors --------- TpcConfTrackFinder(){;} ~TpcConfTrackFinder(){;} // Operations ---------------------- void buildTracks(std::vector& clusters, std::vector& candlist); void buildTracks(TClonesArray* clusterArray, std::vector& candlist); void configure(double xcut, double ycut, double zcut, double chi2cut, unsigned int minHitsForFit, bool domerge, double radiusMergeCut, // fractional cut double dipMergeCut, // fractional cut double distMergeCut); private: // Private Data Members ------------ unsigned int _minHitsForFit; double _zcut; double _xcut; double _ycut; double _chi2cut; double _radiusMergeCut; double _dipMergeCut; double _distMergeCut; bool _domerge; // Private Methods ----------------- TpcConfTrackFinder(const TpcConfTrackFinder&); // prohibit copying bool matchHitTrack(TpcConfMapRecoHit* hit, Track* trk, double& matchQuality); bool matchConfTrack(TpcConfMapRecoHit* hit, Track* trk, double& matchQuality); bool addHit2Track(TpcConfMapRecoHit* hit, Track* trk); bool applyProximityCuts(TpcConfMapRecoHit* hit, TpcConfMapRecoHit* hitontrk); double hitDist(TpcConfMapRecoHit* hit1, TpcConfMapRecoHit* hit2); void merge(std::vector& trks); void mergeTracks(Track* trkA,Track* trkB); }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------