36 produces<reco::TrackCollection>();
37 produces<TrackingRecHitCollection>();
38 produces<reco::TrackExtraCollection>();
60 typedef std::vector<const TrackingRecHit*> RecHits;
81 if (theSeeds->empty()) {
91 typedef std::vector<std::unique_ptr<TrackingRegion> >
Regions;
92 typedef Regions::const_iterator IR;
94 for (IR ir =
regions.begin(), irEnd =
regions.end(); ir < irEnd; ++ir) {
98 TrajectorySeedCollection::const_iterator aSeed = theSeeds->begin();
99 TrajectorySeedCollection::const_iterator lastSeed = theSeeds->end();
100 for (; aSeed != lastSeed; ++aSeed) {
102 std::vector<const TrackingRecHit*> TripletHits(3, static_cast<const TrackingRecHit*>(
nullptr));
103 unsigned int iRecHit = 0;
104 for (
auto const&
recHit : aSeed->recHits()) {
105 TripletHits[iRecHit] = &
recHit;
110 std::unique_ptr<reco::Track>
track = fitter.
run(TripletHits,
region, es);
113 if (!theFilter(
track.get(), TripletHits)) {
123 int nTracks = pixeltracks.size();
126 const RecHits&
hits = pixeltracks.at(
i).second;
128 for (
unsigned int k = 0;
k <
hits.size();
k++) {
130 track->appendHitPattern(*
hit, ttopo);
147 const unsigned nHits = 3;
148 theTrackExtra.
setHits(ohRHProd,
cc, nHits);
151 trackExtras->push_back(theTrackExtra);
160 (
tracks->at(
k)).setExtra(theTrackExtraRef);