30 std::unique_ptr<MuonTrackLoader> trackLoader,
33 std::
move(trackLoader),
39 std::unique_ptr<MuonTrackLoader> trackLoader,
40 std::unique_ptr<MuonTrajectoryCleaner> cleaner,
43 theTrajBuilder(std::
move(ConcreteMuonTrajectoryBuilder)),
44 theTrajCleaner(std::
move(cleaner)),
45 theTrackLoader(std::
move(trackLoader)) {}
49 LogTrace(
"Muon|RecoMuon|MuonTrackFinder") <<
"MuonTrackFinder destructor called" << endl;
70 const string metname =
"Muon|RecoMuon|MuonTrackFinder";
71 LogTrace(metname) <<
"SA Recostruction starting from: " <<
seeds->size() << endl;
83 for (seed =
seeds->begin(); seed !=
seeds->end(); ++
seed, ++nSeed) {
84 LogTrace(metname) <<
"+++ New Seed +++" << endl;
86 for (TrajectoryContainer::iterator it = muonTrajs_temp.begin(); it != muonTrajs_temp.end(); ++it) {
87 (*it)->setSeedRef(
seeds->refAt(nSeed));
88 muonTrajectories.push_back(
std::move(*it));
93 LogTrace(metname) <<
"Clean the trajectories container" << endl;
98 LogTrace(metname) <<
"Convert the trajectories into tracks and load them in to the event" << endl;
99 return load(muonTrajectories, event, ttopo);
104 const string metname =
"Muon|RecoMuon|MuonTrackFinder";
115 for (vector<TrackCand>::const_iterator staCand = staCandColl.begin(); staCand != staCandColl.end(); ++staCand) {
117 muonCandidates.insert(muonCandidates.end(),
118 std::make_move_iterator(muonCands_temp.begin()),
119 std::make_move_iterator(muonCands_temp.end()));
127 LogTrace(metname) <<
"Load Muon Candidates into the event" << endl;
128 load(muonCandidates, event, ttopo);
edm::OrphanHandle< reco::TrackCollection > load(TrajectoryContainer &, edm::Event &, const TrackerTopology &ttopo)
convert the trajectories into tracks and load them in to the event
std::unique_ptr< MuonTrajectoryCleaner > theTrajCleaner
const std::string metname
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > theTtopoToken
void setEvent(const edm::Event &)
percolate the Event Setup
bool getData(T &iHolder) const
virtual ~MuonTrackFinder()
destructor
MuonCandidate::TrajectoryContainer TrajectoryContainer
std::unique_ptr< MuonTrajectoryBuilder > theTrajBuilder
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
MuonTrackFinder(std::unique_ptr< MuonTrajectoryBuilder > ConcreteMuonTrajectoryBuilder, std::unique_ptr< MuonTrackLoader > trackLoader, edm::ConsumesCollector iC)
Constructor, with default cleaner. For the STA reconstruction the trackLoader must have the propagato...
edm::OrphanHandle< reco::TrackCollection > reconstruct(const edm::Handle< edm::View< TrajectorySeed > > &, edm::Event &, const edm::EventSetup &)
reconstruct standalone tracks starting from a collection of seeds
std::unique_ptr< MuonTrackLoader > theTrackLoader
MuonCandidate::CandidateContainer CandidateContainer