25 std::auto_ptr<TrackingRecHitCollection>& selHits,
26 std::auto_ptr<reco::TrackCollection>& selTracks,
27 std::auto_ptr<reco::TrackExtraCollection>& selTrackExtras,
28 std::auto_ptr<std::vector<Trajectory> >& selTrajectories,
38 std::map<unsigned int, unsigned int> tjTkMap;
40 selTracks->reserve(algoResults.size());
41 selTrackExtras->reserve(algoResults.size());
44 for(AlgoProductCollection::iterator
i=algoResults.begin();
i!=algoResults.end();
i++){
47 selTrajectories->push_back(*theTraj);
62 LogDebug(
"TrackProducer") <<
"In KfTrackProducerBase::putInEvt - seedDir=" << seedDir;
65 selTracks->push_back(std::move(*theTrack));
75 unsigned int innerId, outerId;
114 selTrackExtras->push_back(
reco::TrackExtra (outpos, outmom,
true, inpos, inmom,
true,
124 auto ih = selHits->size();
126 auto ie = selHits->size();
129 auto const &
hit = (*selHits)[ih];
142 for (TrackingRecHitCollection::iterator it = selHits->begin(), ed = selHits->end(); it != ed; ++it) {
143 refSetter.
reKey(&*it);
147 LogTrace(
"TrackingRegressionTest") <<
"========== TrackProducer Info ===================";
148 LogTrace(
"TrackingRegressionTest") <<
"number of finalTracks: " << selTracks->size();
149 for (reco::TrackCollection::const_iterator it = selTracks->begin(); it != selTracks->end(); it++) {
150 LogTrace(
"TrackingRegressionTest") <<
"track's n valid and invalid hit, chi2, pt, eta : "
151 << it->found() <<
" , "
152 << it->lost() <<
" , "
153 << it->normalizedChi2() <<
" , "
157 LogTrace(
"TrackingRegressionTest") <<
"=================================================";
159 selTracks->shrink_to_fit();
160 selTrackExtras->shrink_to_fit();
161 selHits->shrink_to_fit();
163 evt.
put( selTrackExtras );
167 selTrajectories->shrink_to_fit();
172 for ( std::map<unsigned int, unsigned int>::iterator
i = tjTkMap.begin();
173 i != tjTkMap.end();
i++ ) {
176 trajTrackMap->insert(
edm::Ref<std::vector<Trajectory> >( rTrajs, (*i).first ),
179 evt.
put( trajTrackMap );
ConstRecHitPointer const & recHit() const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::InputTag clusterRemovalInfo_
const CurvilinearTrajectoryError & curvilinearError() const
void reKey(TrackingRecHit *hit) const
edm::Ref< TrackExtraCollection > TrackExtraRef
persistent reference to a TrackExtra
virtual void putInEvt(edm::Event &, const Propagator *prop, const MeasurementTracker *measTk, std::auto_ptr< TrackingRecHitCollection > &, std::auto_ptr< reco::TrackCollection > &, std::auto_ptr< reco::TrackExtraCollection > &, std::auto_ptr< std::vector< Trajectory > > &, AlgoProductCollection &, TransientTrackingRecHitBuilder const *)
Put produced collections in the event.
PropagationDirection const & direction() const
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
TrajectoryMeasurement const & lastMeasurement() const
void setSecondHitPattern(Trajectory *traj, reco::Track &track, const Propagator *prop, const MeasurementTrackerEvent *measTk)
GlobalVector momentum() const
bool appendHitPattern(const TrackingRecHit &hit)
append a single hit to the HitPattern
edm::RefToBase< TrajectorySeed > seedRef(void) const
std::vector< AlgoProduct > AlgoProductCollection
edm::AssociationMap< edm::OneToOne< std::vector< Trajectory >, reco::TrackCollection, unsigned short > > TrajTrackAssociationCollection
RefProd< PROD > getRefBeforePut()
GlobalPoint position() const
edm::EDGetTokenT< MeasurementTrackerEvent > mteSrc_
std::vector< TrackExtra > TrackExtraCollection
collection of TrackExtra objects
void setExtra(const TrackExtraRef &ref)
set reference to "extra" object
TrajectoryMeasurement const & firstMeasurement() const
const GlobalTrajectoryParameters & globalParameters() const
XYZVectorD XYZVector
spatial vector with cartesian internal representation
XYZPointD XYZPoint
point in space with cartesian internal representation
tuple idx
DEBUGGING if hasattr(process,"trackMonIterativeTracking2012"): print "trackMonIterativeTracking2012 D...
edm::ESHandle< NavigationSchool > theSchool
TrajectoryStateOnSurface const & updatedState() const
reco::TrackResiduals trajectoryToResiduals(const Trajectory &trajectory, enum reco::TrackResiduals::ResidualType type)
edm::OrphanHandle< TrackCollection > rTracks_
boost::remove_cv< typename boost::remove_reference< argument_type >::type >::type key_type