86 static Int_t eventNo = 0;
87 std::cout <<
"CbmLitTrackFinderNN::DoFind: " << eventNo++ <<
" events processed" << std::endl;
140 map<Int_t, pair<CbmLitTrackParam, Bool_t>> binParamMap;
142 for (itBins = bins.begin(); itBins != bins.end(); itBins++) {
143 binParamMap[*itBins] = make_pair<CbmLitTrackParam, Bool_t>(
CbmLitTrackParam(),
true);
150 map<Int_t, pair<CbmLitTrackParam, Bool_t>>::iterator itMap;
151 for (itMap = binParamMap.begin(); itMap != binParamMap.end(); itMap++) {
152 (*itMap).second.first = par;
155 (*itMap).second.second =
false;
160 litfloat minChiSq = std::numeric_limits<litfloat>::max();
167 assert(binParamMap.find(bin) != binParamMap.end());
168 if (!binParamMap[bin].second)
continue;
183 bool hitInside = (pixelHit->
GetX() < (tpar.
GetX() + devX)) && (pixelHit->
GetX() > (tpar.
GetX() - devX))
184 && (pixelHit->
GetY() < (tpar.
GetY() + devY)) && (pixelHit->
GetY() > (tpar.
GetY() - devY))
187 if (!hitInside)
continue;
190 litfloat chi = std::numeric_limits<litfloat>::max();
191 fFilter->Update(&tpar, hit, chi);
194 if (hitInValidationGate && chi < minChiSq) {
201 if (minHit != NULL) {
Base data class for hits.
Base data class for pixel hits.
Implementation of nearest neighbor tracking algorithm.
Data class for track parameters.
Interface for track selection algorithm.
Interface for track update algorithm.
Base data class for track.
static vector< vector< QAHit > > hits
std::vector< CbmTofHit * >::iterator HitPtrIterator
std::vector< CbmTofTrack * >::iterator TrackPtrIterator
std::vector< CbmTofHit * >::const_iterator HitPtrConstIterator
std::vector< CbmTofTrack * > TrackPtrVector
std::vector< CbmTofHit * > HitPtrVector
friend fvec sqrt(const fvec &a)
Base data class for hits.
LitHitType GetType() const
Base data class for pixel hits.
TrackPropagatorPtr fPropagator
std::set< Int_t > fUsedSeedsSet
void CopyToOutput(TrackPtrIterator itBegin, TrackPtrIterator itEnd, TrackPtrVector &tracks)
Copy tracks to output array.
std::set< Int_t > fUsedHitsSet
void RemoveHits(TrackPtrIterator itBegin, TrackPtrIterator itEnd)
Write already used hits to a used hits set.
void InitTrackSeeds(TrackPtrIterator itBegin, TrackPtrIterator itEnd)
Initialize track seeds and copy to local array.
TrackSelectionPtr fFinalSelection
TrackSelectionPtr fSeedSelection
void FollowTracks(TrackPtrIterator itBegin, TrackPtrIterator itEnd)
Follow tracks through detector.
vector< litfloat > fSigmaCoef
vector< litfloat > fChiSqPixelHitCut
virtual ~CbmLitTrackFinderNN()
Destructor.
vector< litfloat > fChiSqStripHitCut
void ArrangeHits(HitPtrIterator itBegin, HitPtrIterator itEnd)
virtual LitStatus DoFind(HitPtrVector &hits, TrackPtrVector &trackSeeds, TrackPtrVector &tracks)
Inherited from CbmLitTrackFinder.
CbmLitTrackFinderNN()
Constructor.
vector< Int_t > fMaxNofMissingHits
Data class for track parameters.
litfloat GetCovariance(int index) const
Base data class for track.
void SetParamLast(const CbmLitTrackParam *par)
Int_t GetPreviousTrackId() const
void SetNofMissingHits(Int_t nofMissingHits)
Int_t GetNofMissingHits() const
const CbmLitHit * GetHit(Int_t index) const
const CbmLitTrackParam * GetParamLast() const
void SetChi2(litfloat chi2)
void AddHit(const CbmLitHit *hit)
Add hit to track. No additional memory is allocated for hit.
LitTrackQa GetQuality() const
Bool_t CheckParams() const
Return true if track parameters are correct.
void SetLastStationId(Int_t lastPlaneId)
Int_t NDF(const CbmLitTrack *track)