CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MuonTrackLoader.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackingTools_MuonTrackLoader_H
2 #define RecoMuon_TrackingTools_MuonTrackLoader_H
3 
13 
19 
21 
24 
26 
27 
28 namespace edm {class Event; class EventSetup; class ParameterSet;}
29 
30 class Trajectory;
31 class Propagator;
32 class MuonServiceProxy;
34 class TrajectorySmoother;
35 class ForwardDetLayer;
36 class BarrelDetLayer;
37 
39  public:
40 
43 
46 
48  virtual ~MuonTrackLoader();
49 
52  edm::Event&,const std::string& = "",
53  bool = true);
54 
57  edm::Event&, std::vector<bool>&,
58  const std::string& = "",
59  bool = true);
60 
63  edm::Event&,const std::vector<std::pair<Trajectory*, reco::TrackRef> >&,
64  const std::string& = "",
65  bool = true);
66 
69  edm::Event&);
70 
71  private:
72  static std::vector<const TrackingRecHit*> unpackHit(const TrackingRecHit &hit);
73 
75  std::pair<bool,reco::Track> buildTrackAtPCA(const Trajectory& trajectory, const reco::BeamSpot &) const;
76 
78  std::pair<bool,reco::Track> buildTrackUpdatedAtPCA(const reco::Track& trackAtPCA, const reco::BeamSpot &) const;
79 
81 
83 
86 
88 
91  std::unique_ptr<TrajectorySmoother> theSmoother;
93 
94 
97 
103 };
104 #endif
edm::EDGetTokenT< reco::BeamSpot > theBeamSpotToken
std::unique_ptr< TrajectorySmoother > theSmoother
MuonTrackLoader(edm::ParameterSet &parameterSet, edm::ConsumesCollector &iC, const MuonServiceProxy *service=0)
Constructor for the STA reco the args must be specify!
std::vector< Trajectory * > TrajectoryContainer
Definition: MuonCandidate.h:19
TkClonerImpl hitCloner
std::string theSmootherName
static std::vector< const TrackingRecHit * > unpackHit(const TrackingRecHit &hit)
MuonCandidate::CandidateContainer CandidateContainer
edm::InputTag theBeamSpotInputTag
virtual ~MuonTrackLoader()
Destructor.
std::vector< MuonCandidate * > CandidateContainer
Definition: MuonCandidate.h:20
MuonUpdatorAtVertex * theUpdatorAtVtx
MuonCandidate::TrajectoryContainer TrajectoryContainer
edm::OrphanHandle< reco::TrackCollection > loadTracks(const TrajectoryContainer &, edm::Event &, const std::string &="", bool=true)
Convert the trajectories into tracks and load the tracks in the event.
std::string theL2SeededTkLabel
Label for L2SeededTracks.
reco::TrackExtra buildTrackExtra(const Trajectory &) const
std::pair< bool, reco::Track > buildTrackAtPCA(const Trajectory &trajectory, const reco::BeamSpot &) const
Build a track at the PCA WITHOUT any vertex constriant.
const MuonServiceProxy * theService
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.
ParameterSet const & parameterSet(Provenance const &provenance)
Definition: Provenance.cc:11