CMS 3D CMS Logo

GlobalCosmicMuonTrajectoryBuilder.h
Go to the documentation of this file.
1 #ifndef RecoMuon_CosmicMuonProducer_GlobalCosmicMuonTrajectoryBuilder_H
2 #define RecoMuon_CosmicMuonProducer_GlobalCosmicMuonTrajectoryBuilder_H
3 
26 
27 namespace edm {
28  class ParameterSet;
29  class Event;
30  class EventSetup;
31 } // namespace edm
32 
33 class Trajectory;
36 
38 public:
43 
48  typedef std::pair<const Trajectory*, reco::TrackRef> TrackCand;
49 
54 
57 
60 
62 
64  CandidateContainer trajectories(const TrackCand&) override;
65 
67  std::vector<TrackCand> match(const TrackCand&, const edm::Handle<reco::TrackCollection>&);
68 
69  void setEvent(const edm::Event&) override;
70 
71 private:
73 
75 
77 
78  const CosmicMuonUtilities* utilities() const { return smoother()->utilities(); }
79 
80  bool isTraversing(const reco::Track& tk) const;
81 
83 
85 
87 
90 
93 
96 
98 
100 
101  const std::vector<Trajectory>* allTrackerTrajs;
102 
104 };
105 #endif
MuonCandidate::CandidateContainer CandidateContainer
const CosmicMuonUtilities * utilities() const
edm::ESHandle< TransientTrackingRecHitBuilder > theTrackerRecHitBuilder
edm::EDGetTokenT< reco::TrackCollection > theTkTrackToken
edm::ESHandle< TransientTrackingRecHitBuilder > theMuonRecHitBuilder
MuonTransientTrackingRecHit::MuonRecHitContainer MuonRecHitContainer
TrajectoryContainer trajectories(const TrajectorySeed &) override
dummy implementation, unused in this class
std::vector< ConstRecHitPointer > RecHitContainer
MuonCandidate::TrajectoryContainer TrajectoryContainer
TransientTrackingRecHit::RecHitPointer RecHitPointer
TransientTrackingRecHit::RecHitContainer RecHitContainer
ConstRecHitContainer getTransientRecHits(const reco::Track &) const
GlobalCosmicMuonTrajectoryBuilder(const edm::ParameterSet &, const MuonServiceProxy *service, edm::ConsumesCollector &iC)
Constructor.
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
std::shared_ptr< MuonTransientTrackingRecHit > MuonRecHitPointer
bool isTraversing(const reco::Track &tk) const
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
MuonTransientTrackingRecHit::MuonRecHitPointer MuonRecHitPointer
void sortHits(ConstRecHitContainer &, ConstRecHitContainer &, ConstRecHitContainer &)
MuonTransientTrackingRecHit::ConstMuonRecHitContainer ConstMuonRecHitContainer
std::shared_ptr< TrackingRecHit const > RecHitPointer
const CosmicMuonUtilities * utilities() const
std::vector< ConstMuonRecHitPointer > ConstMuonRecHitContainer
std::vector< ConstRecHitPointer > ConstRecHitContainer
std::vector< TrackCand > match(const TrackCand &, const edm::Handle< reco::TrackCollection > &)
check if tk and muon Tracks are matched
const edm::ESGetToken< TransientTrackingRecHitBuilder, TransientRecHitRecord > theTrackerRecHitBuilderToken
MuonTransientTrackingRecHit::ConstMuonRecHitPointer ConstMuonRecHitPointer
const std::vector< Trajectory > * allTrackerTrajs
void setEvent(const edm::Event &) override
pass the Event to the algo at each event
HLT enums.
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
edm::ESHandle< Propagator > propagator(std::string propagatorName) const
get the propagator
std::pair< const Trajectory *, reco::TrackRef > TrackCand
const edm::ESGetToken< TransientTrackingRecHitBuilder, TransientRecHitRecord > theMuonRecHitBuilderToken
std::shared_ptr< MuonTransientTrackingRecHit const > ConstMuonRecHitPointer
std::vector< MuonRecHitPointer > MuonRecHitContainer
edm::Handle< reco::TrackCollection > theTrackerTracks
TransientTrackingRecHit::ConstRecHitPointer ConstRecHitPointer