CMS 3D CMS Logo

MuonTrackFinder.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackingTools_MuonTrackFinder_H
2 #define RecoMuon_TrackingTools_MuonTrackFinder_H
3 
15 
17 
18 #include <vector>
19 
20 namespace edm {
21  class ParameterSet;
22  class Event;
23  class EventSetup;
24 } // namespace edm
25 class TrackerTopology;
26 
29 class MuonTrackLoader;
30 
32 public:
35  typedef std::pair<const Trajectory*, reco::TrackRef> TrackCand;
36 
37 public:
39  MuonTrackFinder(std::unique_ptr<MuonTrajectoryBuilder> ConcreteMuonTrajectoryBuilder,
40  std::unique_ptr<MuonTrackLoader> trackLoader);
41 
43  MuonTrackFinder(std::unique_ptr<MuonTrajectoryBuilder> ConcreteMuonTrajectoryBuilder,
44  std::unique_ptr<MuonTrackLoader> trackLoader,
45  std::unique_ptr<MuonTrajectoryCleaner> cleaner);
46 
48  virtual ~MuonTrackFinder();
49 
52  edm::Event&,
53  const edm::EventSetup&);
54 
58  void reconstruct(const std::vector<TrackCand>&, edm::Event&, const edm::EventSetup&);
59 
60 private:
62  void setEvent(const edm::Event&);
63 
66 
68  void load(CandidateContainer&, edm::Event&, const TrackerTopology& ttopo);
69 
70 private:
71  std::unique_ptr<MuonTrajectoryBuilder> theTrajBuilder;
72 
73  std::unique_ptr<MuonTrajectoryCleaner> theTrajCleaner;
74 
75  std::unique_ptr<MuonTrackLoader> theTrackLoader;
76 };
77 #endif
TrackExtraFwd.h
ESHandle.h
MuonTrackFinder::setEvent
void setEvent(const edm::Event &)
percolate the Event Setup
Definition: MuonTrackFinder.cc:52
MuonCandidate::TrajectoryContainer
std::vector< std::unique_ptr< Trajectory > > TrajectoryContainer
Definition: MuonCandidate.h:17
edm
HLT enums.
Definition: AlignableModifier.h:19
TrackerTopology
Definition: TrackerTopology.h:16
MuonTrackFinder::theTrajBuilder
std::unique_ptr< MuonTrajectoryBuilder > theTrajBuilder
Definition: MuonTrackFinder.h:71
MuonTrackFinder::reconstruct
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
Definition: MuonTrackFinder.cc:67
edm::Handle
Definition: AssociativeIterator.h:50
MuonTrackFinder::CandidateContainer
MuonCandidate::CandidateContainer CandidateContainer
Definition: MuonTrackFinder.h:34
MuonTrackFinder::MuonTrackFinder
MuonTrackFinder(std::unique_ptr< MuonTrajectoryBuilder > ConcreteMuonTrajectoryBuilder, std::unique_ptr< MuonTrackLoader > trackLoader)
Constructor, with default cleaner. For the STA reconstruction the trackLoader must have the propagato...
Definition: MuonTrackFinder.cc:32
MuonTrackLoader
Definition: MuonTrackLoader.h:43
TrackFwd.h
MuonTrackFinder::theTrajCleaner
std::unique_ptr< MuonTrajectoryCleaner > theTrajCleaner
Definition: MuonTrackFinder.h:73
Event
MuonTrackFinder::TrackCand
std::pair< const Trajectory *, reco::TrackRef > TrackCand
Definition: MuonTrackFinder.h:35
MuonTrajectoryBuilder
Definition: MuonTrajectoryBuilder.h:21
edm::View
Definition: CaloClusterFwd.h:14
ParameterSet
Definition: Functions.h:16
MuonCandidate.h
MuonCandidate::CandidateContainer
std::vector< std::unique_ptr< MuonCandidate > > CandidateContainer
Definition: MuonCandidate.h:18
MuonTrajectoryCleaner
Definition: MuonTrajectoryCleaner.h:16
edm::EventSetup
Definition: EventSetup.h:57
TrajectorySeedCollection.h
MuonTrackFinder::theTrackLoader
std::unique_ptr< MuonTrackLoader > theTrackLoader
Definition: MuonTrackFinder.h:75
MuonTrackFinder::~MuonTrackFinder
virtual ~MuonTrackFinder()
destructor
Definition: MuonTrackFinder.cc:47
Trajectory.h
edm::OrphanHandle< reco::TrackCollection >
MuonTrackFinder::load
edm::OrphanHandle< reco::TrackCollection > load(TrajectoryContainer &, edm::Event &, const TrackerTopology &ttopo)
convert the trajectories into tracks and load them in to the event
Definition: MuonTrackFinder.cc:55
MuonTrackFinder::TrajectoryContainer
MuonCandidate::TrajectoryContainer TrajectoryContainer
Definition: MuonTrackFinder.h:33
MuonTrackFinder
Definition: MuonTrackFinder.h:31
EventSetup
edm::Event
Definition: Event.h:73