Go to the documentation of this file. 1 #ifndef RecoMuon_GlobalTrackingTools_GlobalTrajectoryBuilderBase_H
2 #define RecoMuon_GlobalTrackingTools_GlobalTrajectoryBuilderBase_H
52 typedef std::vector<Trajectory>
TC;
53 typedef TC::const_iterator
TI;
129 if (barrel_a && barrel_b)
130 return a->det()->surface().position().perp() <
b->det()->surface().position().perp();
132 else if (!barrel_a && !barrel_b)
133 return fabs(
a->globalPosition().z()) < fabs(
b->globalPosition().z());
134 else if (barrel_a && !barrel_b)
136 else if (!barrel_a && barrel_b)
std::vector< TrackCand > chooseRegionalTrackerTracks(const TrackCand &, const std::vector< TrackCand > &)
choose tracker tracks within region of interest
TransientTrackingRecHit::ConstRecHitPointer ConstRecHitPointer
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > theTopoToken
MuonTransientTrackingRecHit::MuonRecHitPointer MuonRecHitPointer
const MuonServiceProxy * theService
std::shared_ptr< MuonTransientTrackingRecHit const > ConstMuonRecHitPointer
const edm::Event * theEvent
std::string theTrackerPropagatorName
edm::ESGetToken< TransientTrackingRecHitBuilder, TransientRecHitRecord > theMuonRecHitBuilderToken
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
TransientTrackingRecHit::RecHitPointer RecHitPointer
MuonTransientTrackingRecHit::MuonRecHitContainer MuonRecHitContainer
GlobalTrajectoryBuilderBase(const edm::ParameterSet &, const MuonServiceProxy *, edm::ConsumesCollector &)
constructor with Parameter Set and MuonServiceProxy
GlobalMuonTrackMatcher * trackMatcher() const
std::vector< ConstMuonRecHitPointer > ConstMuonRecHitContainer
std::vector< MuonRecHitPointer > MuonRecHitContainer
const MuonServiceProxy * service() const
std::shared_ptr< TrackingRecHit const > RecHitPointer
std::vector< Trajectory > TC
MuonTrajectoryBuilder::CandidateContainer build(const TrackCand &, MuonTrajectoryBuilder::CandidateContainer &) const
build combined trajectory from sta Track and tracker RecHits
MuonCandidate::CandidateContainer CandidateContainer
std::shared_ptr< MuonTransientTrackingRecHit > MuonRecHitPointer
std::vector< ConstRecHitPointer > RecHitContainer
const TransientTrackingRecHitBuilder * theMuonRecHitBuilder
bool operator()(const TransientTrackingRecHit::ConstRecHitPointer &a, const TransientTrackingRecHit::ConstRecHitPointer &b) const
const TransientTrackingRecHitBuilder * theTrackerRecHitBuilder
RectangularEtaPhiTrackingRegion defineRegionOfInterest(const reco::TrackRef &) const
define region of interest with tracker
GlobalMuonTrackMatcher * theTrackMatcher
MuonDetLayerMeasurements * theLayerMeasurements
void fixTEC(ConstRecHitContainer &all, double scl_x, double scl_y) const
rescale errors of outermost TEC RecHit
void setEvent(const edm::Event &) override
pass the Event to the algo at each event
GlobalMuonRefitter * theGlbRefitter
std::vector< ConstRecHitPointer > ConstRecHitContainer
~GlobalTrajectoryBuilderBase() override
destructor
double trackProbability(const Trajectory &) const
calculate chi2 probability (-ln(P))
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
MuonTransientTrackingRecHit::ConstMuonRecHitPointer ConstMuonRecHitPointer
TransientTrackingRecHit::RecHitContainer RecHitContainer
RefitDirection checkRecHitsOrdering(const ConstRecHitContainer &) const
This does nothing now.
MuonCandidate::TrajectoryContainer TrajectoryContainer
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
TransientTrackingRecHit::ConstRecHitContainer getTransientRecHits(const reco::Track &) const
get transient RecHits of a Track
MuonTrajectoryBuilder::TrajectoryContainer trajectories(const TrajectorySeed &) override
dummy implementation, unused in this class
ConstRecHitContainer selectMuonHits(const Trajectory &, const std::vector< int > &) const
select muon hits compatible with trajectory; check hits in chambers with showers
TrackTransformer * theTrackTransformer
std::pair< const Trajectory *, reco::TrackRef > TrackCand
const Trajectory * chooseTrajectory(const std::vector< Trajectory * > &, int) const
choose final trajectory
MuonTrackingRegionBuilder * theRegionBuilder
void printHits(const ConstRecHitContainer &) const
print all RecHits of a trajectory
virtual std::vector< TrackCand > makeTkCandCollection(const TrackCand &)=0
make a TrackCand collection using tracker Track, Trajectory information
void addTraj(TrackCand &)
if TrackCand has only a TrackRef, attempt to add Trajectory*
edm::ESGetToken< TransientTrackingRecHitBuilder, TransientRecHitRecord > theTrackerRecHitBuilderToken
ConstRecHitContainer selectTrackerHits(const ConstRecHitContainer &) const
select tracker hits; exclude some tracker hits in the global trajectory
void checkMuonHits(const reco::Track &, ConstRecHitContainer &, ConstRecHitContainer &, std::vector< int > &) const
check muon RecHits, calculate chamber occupancy and select hits to be used in the final fit
MuonTransientTrackingRecHit::ConstMuonRecHitContainer ConstMuonRecHitContainer
const TrackerTopology * theTopo