CMS 3D CMS Logo

MuonTrackLoader.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackingTools_MuonTrackLoader_H
2 #define RecoMuon_TrackingTools_MuonTrackLoader_H
3 
13 
20 
22 
25 
27 
28 namespace edm {
29  class Event;
30  class EventSetup;
31  class ParameterSet;
32 } // namespace edm
33 
34 class Trajectory;
35 class Propagator;
36 class MuonServiceProxy;
38 class TrajectorySmoother;
39 class ForwardDetLayer;
40 class BarrelDetLayer;
41 class TrackerTopology;
42 
44 public:
47 
51  const MuonServiceProxy* service = nullptr);
52 
54  virtual ~MuonTrackLoader();
55 
58  TrajectoryContainer&, edm::Event&, const TrackerTopology& ttopo, const std::string& = "", bool = true);
59 
62  edm::Event&,
63  std::vector<bool>&,
64  const TrackerTopology& ttopo,
65  const std::string& = "",
66  bool = true);
67 
70  edm::Event&,
71  const std::vector<std::pair<Trajectory*, reco::TrackRef> >&,
72  edm::Handle<reco::TrackCollection> const& trackHandle,
73  const TrackerTopology& ttopo,
74  const std::string& = "",
75  bool = true);
76 
79  edm::Event&,
80  const TrackerTopology& ttopo);
81 
82 private:
83  static std::vector<const TrackingRecHit*> unpackHit(const TrackingRecHit& hit);
84 
86  std::pair<bool, reco::Track> buildTrackAtPCA(const Trajectory& trajectory, const reco::BeamSpot&) const;
87 
89  std::pair<bool, reco::Track> buildTrackUpdatedAtPCA(const reco::Track& trackAtPCA, const reco::BeamSpot&) const;
90 
92 
94 
96  std::unique_ptr<MuonUpdatorAtVertex> theUpdatorAtVtx;
97 
99 
103  std::unique_ptr<TrajectorySmoother> theSmoother;
105 
108 
114 };
115 #endif
MuonUpdatorAtVertex
Definition: MuonUpdatorAtVertex.h:42
service
Definition: service.py:1
Handle.h
TrackExtraFwd.h
MuonTrackLoader::theUpdatingAtVtx
bool theUpdatingAtVtx
Definition: MuonTrackLoader.h:95
ESHandle.h
MuonCandidate::TrajectoryContainer
std::vector< std::unique_ptr< Trajectory > > TrajectoryContainer
Definition: MuonCandidate.h:17
MuonTrackLoader::MuonTrackLoader
MuonTrackLoader(edm::ParameterSet &parameterSet, edm::ConsumesCollector &iC, const MuonServiceProxy *service=nullptr)
Constructor for the STA reco the args must be specify!
Definition: MuonTrackLoader.cc:93
MuonTrackLoader::buildTrackAtPCA
std::pair< bool, reco::Track > buildTrackAtPCA(const Trajectory &trajectory, const reco::BeamSpot &) const
Build a track at the PCA WITHOUT any vertex constriant.
Definition: MuonTrackLoader.cc:672
edm::EDGetTokenT< reco::BeamSpot >
MuonTrackLoader::thePutTkTrackFlag
bool thePutTkTrackFlag
Definition: MuonTrackLoader.h:111
edm
HLT enums.
Definition: AlignableModifier.h:19
TrackerTopology
Definition: TrackerTopology.h:16
MuonTrackLoader::theSmoothTkTrackFlag
bool theSmoothTkTrackFlag
Definition: MuonTrackLoader.h:112
edm::Handle< reco::TrackCollection >
MuonTrackLoader::theAllowNoVtxFlag
bool theAllowNoVtxFlag
Definition: MuonTrackLoader.h:113
MuonTrackLoader::hitCloner
TkClonerImpl hitCloner
Definition: MuonTrackLoader.h:104
TkTransientTrackingRecHitBuilder.h
TrajectorySmoother
Definition: TrajectorySmoother.h:11
Propagator
Definition: Propagator.h:44
reco::TrackExtra
Definition: TrackExtra.h:26
MuonTrackLoader
Definition: MuonTrackLoader.h:43
TrackFwd.h
BeamSpot.h
MuonTrackLoader::buildTrackUpdatedAtPCA
std::pair< bool, reco::Track > buildTrackUpdatedAtPCA(const reco::Track &trackAtPCA, const reco::BeamSpot &) const
Takes a track at the PCA and applies the vertex constriant.
Definition: MuonTrackLoader.cc:722
MuonTrackLoader::loadTracks
edm::OrphanHandle< reco::TrackCollection > loadTracks(TrajectoryContainer &, edm::Event &, const TrackerTopology &ttopo, const std::string &="", bool=true)
Convert the trajectories into tracks and load the tracks in the event.
MuonTrackLoader::buildTrackExtra
reco::TrackExtra buildTrackExtra(const Trajectory &) const
Definition: MuonTrackLoader.cc:753
OrphanHandle.h
MuonFwd.h
reco::BeamSpot
Definition: BeamSpot.h:21
reco::Track
Definition: Track.h:27
Event
MuonTrackLoader::theTrajectoryFlag
bool theTrajectoryFlag
Definition: MuonTrackLoader.h:98
MuonTrackLoader::theBeamSpotInputTag
edm::InputTag theBeamSpotInputTag
Definition: MuonTrackLoader.h:106
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
MuonTrackLoader::theService
const MuonServiceProxy * theService
Definition: MuonTrackLoader.h:93
edm::ParameterSet
Definition: ParameterSet.h:36
ParameterSet
Definition: Functions.h:16
MuonCandidate.h
MuonTrackLoader::theL2SeededTkLabel
std::string theL2SeededTkLabel
Label for L2SeededTracks.
Definition: MuonTrackLoader.h:110
MuonTrackLoader::theSmoother
std::unique_ptr< TrajectorySmoother > theSmoother
Definition: MuonTrackLoader.h:103
MuonTrackLoader::unpackHit
static std::vector< const TrackingRecHit * > unpackHit(const TrackingRecHit &hit)
Definition: MuonTrackLoader.cc:46
MuonTrackLoader::CandidateContainer
MuonCandidate::CandidateContainer CandidateContainer
Definition: MuonTrackLoader.h:46
MuonCandidate::CandidateContainer
std::vector< std::unique_ptr< MuonCandidate > > CandidateContainer
Definition: MuonCandidate.h:18
MuonTrackLoader::theUpdatorAtVtx
std::unique_ptr< MuonUpdatorAtVertex > theUpdatorAtVtx
Definition: MuonTrackLoader.h:96
BarrelDetLayer
Definition: BarrelDetLayer.h:22
InputTag.h
TrackingRecHit
Definition: TrackingRecHit.h:21
MuonTrackLoader::theSmootherName
std::string theSmootherName
Definition: MuonTrackLoader.h:101
MuonTrackLoader::~MuonTrackLoader
virtual ~MuonTrackLoader()
Destructor.
Definition: MuonTrackLoader.cc:125
edm::OrphanHandle< reco::TrackCollection >
TkClonerImpl
Definition: TkClonerImpl.h:12
ForwardDetLayer
Definition: ForwardDetLayer.h:22
MuonTrackLoader::theTrackerRecHitBuilderName
std::string theTrackerRecHitBuilderName
Definition: MuonTrackLoader.h:102
MuonTrackLoader::theBeamSpotToken
edm::EDGetTokenT< reco::BeamSpot > theBeamSpotToken
Definition: MuonTrackLoader.h:107
Trajectory
Definition: Trajectory.h:38
edm::parameterSet
ParameterSet const & parameterSet(Provenance const &provenance, ProcessHistory const &history)
Definition: Provenance.cc:11
EventSetup.h
MuonTrackLoader::TrajectoryContainer
MuonCandidate::TrajectoryContainer TrajectoryContainer
Definition: MuonTrackLoader.h:45
ConsumesCollector.h
EventSetup
MuonServiceProxy
Definition: MuonServiceProxy.h:38
edm::Event
Definition: Event.h:73
MuonTrackLoader::theSmoothingStep
bool theSmoothingStep
Definition: MuonTrackLoader.h:100
edm::InputTag
Definition: InputTag.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
hit
Definition: SiStripHitEffFromCalibTree.cc:88