#include <PixelTrackCleanerWrapper.h>
Public Member Functions | |
pixeltrackfitting::TracksWithTTRHs | clean (const pixeltrackfitting::TracksWithTTRHs &initialT_TTRHs, const TrackerTopology *tTopo) |
PixelTrackCleanerWrapper (PixelTrackCleaner *tc) | |
Private Attributes | |
PixelTrackCleaner * | theCleaner |
Definition at line 11 of file PixelTrackCleanerWrapper.h.
PixelTrackCleanerWrapper::PixelTrackCleanerWrapper | ( | PixelTrackCleaner * | tc | ) | [inline] |
Definition at line 13 of file PixelTrackCleanerWrapper.h.
: theCleaner(tc) {}
pixeltrackfitting::TracksWithTTRHs PixelTrackCleanerWrapper::clean | ( | const pixeltrackfitting::TracksWithTTRHs & | initialT_TTRHs, |
const TrackerTopology * | tTopo | ||
) | [inline] |
Definition at line 14 of file PixelTrackCleanerWrapper.h.
References PixelTrackCleaner::cleanTracks(), i, n, SeedingHitSet::nullPtr(), SeedingHitSet::size(), and theCleaner.
Referenced by PixelTrackReconstruction::run().
{ pixeltrackfitting::TracksWithRecHits initialT_TRHs; std::map<const TrackingRecHit *, TransientTrackingRecHit::ConstRecHitPointer> hitMap; for (pixeltrackfitting::TracksWithTTRHs::const_iterator it = initialT_TTRHs.begin(), iend = initialT_TTRHs.end(); it < iend; ++it) { SeedingHitSet ttrhs = it->second; std::vector<const TrackingRecHit *> trhs; for (unsigned int i=0, n=ttrhs.size(); i < n; ++i) { const TrackingRecHit * trh = ttrhs[i]->hit(); trhs.push_back(trh); hitMap[trh]=ttrhs[i]; } initialT_TRHs.push_back( pixeltrackfitting::TrackWithRecHits(it->first, trhs) ); } pixeltrackfitting::TracksWithRecHits finalT_TRHs = theCleaner->cleanTracks(initialT_TRHs, tTopo); pixeltrackfitting::TracksWithTTRHs finalT_TTRHs; for (pixeltrackfitting::TracksWithRecHits::const_iterator it = finalT_TRHs.begin(), iend = finalT_TRHs.end(); it < iend; ++it) { const std::vector<const TrackingRecHit *> & trhs = it->second; assert(!(trhs.size()<2)); if (trhs.size()<2) continue; SeedingHitSet ttrhs( hitMap[trhs[0]], hitMap[trhs[1]], trhs.size()>2 ? hitMap[trhs[2]] : SeedingHitSet::nullPtr()); finalT_TTRHs.push_back( pixeltrackfitting::TrackWithTTRHs(it->first, ttrhs)); } return finalT_TTRHs; }
Definition at line 45 of file PixelTrackCleanerWrapper.h.
Referenced by clean().