33 : theTrajBuilder(ConcreteMuonTrajectoryBuilder),
35 theTrackLoader(trackLoader) {}
45 LogTrace(
"Muon|RecoMuon|MuonTrackFinder") <<
"MuonTrackFinder destructor called" << endl;
69 const string metname =
"Muon|RecoMuon|MuonTrackFinder";
70 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(*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, *httopo);
104 const string metname =
"Muon|RecoMuon|MuonTrackFinder";
116 for (vector<TrackCand>::const_iterator staCand = staCandColl.begin(); staCand != staCandColl.end(); ++staCand) {
118 muonCandidates.insert(muonCandidates.end(), muonCands_temp.begin(), muonCands_temp.end());
126 LogTrace(metname) <<
"Load Muon Candidates into the event" << endl;
127 load(muonCandidates, event, *httopo);
void clean(TrajectoryContainer &muonTrajectories, edm::Event &evt, const edm::Handle< edm::View< TrajectorySeed > > &seeds)
Clean the trajectories container, erasing the (worst) clone trajectory.
const std::string metname
virtual TrajectoryContainer trajectories(const TrajectorySeed &)=0
return a container of the reconstructed trajectories compatible with a given seed ...
void setEvent(const edm::Event &)
percolate the Event Setup
virtual ~MuonTrackFinder()
destructor
virtual void setEvent(const edm::Event &event)=0
pass the Event to the algo at each event
const_iterator begin() const
MuonTrackFinder(MuonTrajectoryBuilder *ConcreteMuonTrajectoryBuilder, MuonTrackLoader *trackLoader)
Constructor, with default cleaner. For the STA reconstruction the trackLoader must have the propagato...
edm::OrphanHandle< reco::TrackCollection > load(const TrajectoryContainer &, edm::Event &, const TrackerTopology &ttopo)
convert the trajectories into tracks and load them in to the event
edm::OrphanHandle< reco::TrackCollection > loadTracks(const TrajectoryContainer &, edm::Event &, const TrackerTopology &ttopo, const std::string &="", bool=true)
Convert the trajectories into tracks and load the tracks in the event.
MuonTrackLoader * theTrackLoader
MuonCandidate::TrajectoryContainer TrajectoryContainer
MuonTrajectoryBuilder * theTrajBuilder
MuonTrajectoryCleaner * theTrajCleaner
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
const_iterator end() const
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
MuonCandidate::CandidateContainer CandidateContainer