![]() |
![]() |
#include <SeedGeneratorFromRegionHits.h>
Public Member Functions | |
void | run (TrajectorySeedCollection &seedCollection, const TrackingRegion ®ion, const edm::Event &ev, const edm::EventSetup &es) |
SeedGeneratorFromRegionHits (OrderedHitsGenerator *aGenerator, SeedComparitor *aComparitor=0, SeedCreator *aSeedCreator=0) | |
Private Attributes | |
std::unique_ptr< SeedComparitor > | theComparitor |
std::unique_ptr < OrderedHitsGenerator > | theHitsGenerator |
std::unique_ptr< SeedCreator > | theSeedCreator |
Definition at line 17 of file SeedGeneratorFromRegionHits.h.
SeedGeneratorFromRegionHits::SeedGeneratorFromRegionHits | ( | OrderedHitsGenerator * | aGenerator, |
SeedComparitor * | aComparitor = 0 , |
||
SeedCreator * | aSeedCreator = 0 |
||
) |
Definition at line 10 of file SeedGeneratorFromRegionHits.cc.
: theHitsGenerator(ohg), theComparitor(asc), theSeedCreator(asp) { }
void SeedGeneratorFromRegionHits::run | ( | TrajectorySeedCollection & | seedCollection, |
const TrackingRegion & | region, | ||
const edm::Event & | ev, | ||
const edm::EventSetup & | es | ||
) |
Definition at line 16 of file SeedGeneratorFromRegionHits.cc.
References OrderedSeedingHits::size(), theComparitor, theHitsGenerator, and theSeedCreator.
Referenced by EgammaHLTRegionalPixelSeedGeneratorProducers::produce(), SeedGeneratorFromRegionHitsEDProducer::produce(), TSGFromOrderedHits::run(), and TSGSmart::run().
{ if (theComparitor) theComparitor->init(es); theSeedCreator->init(region, es, theComparitor.get()); const OrderedSeedingHits & hitss = theHitsGenerator->run(region, ev, es); unsigned int nHitss = hitss.size(); if (seedCollection.empty()) seedCollection.reserve(nHitss); // don't do multiple reserves in the case of multiple regions: it would make things even worse // as it will cause N re-allocations instead of the normal log(N)/log(2) for (unsigned int iHits = 0; iHits < nHitss; ++iHits) { const SeedingHitSet & hits = hitss[iHits]; if (!theComparitor || theComparitor->compatible(hits, region) ) { theSeedCreator->makeSeed(seedCollection, hits); } } theHitsGenerator->clear(); }
std::unique_ptr<SeedComparitor> SeedGeneratorFromRegionHits::theComparitor [private] |
Definition at line 33 of file SeedGeneratorFromRegionHits.h.
Referenced by run().
std::unique_ptr<OrderedHitsGenerator> SeedGeneratorFromRegionHits::theHitsGenerator [private] |
Definition at line 32 of file SeedGeneratorFromRegionHits.h.
Referenced by run().
std::unique_ptr<SeedCreator> SeedGeneratorFromRegionHits::theSeedCreator [private] |
Definition at line 34 of file SeedGeneratorFromRegionHits.h.
Referenced by run().