#include <TrackTransformer.h>
Public Member Functions | |
TransientTrackingRecHit::ConstRecHitContainer | getTransientRecHits (const reco::TransientTrack &track) const |
const MagneticField * | magneticField () const |
the magnetic field More... | |
std::unique_ptr< TrajectoryFitter > const & | refitter () const |
the refitter used to refit the reco::Track More... | |
void | setServices (const edm::EventSetup &) override |
set the services needed by the TrackTransformer More... | |
std::unique_ptr< TrajectorySmoother > const & | smoother () const |
the smoother used to smooth the trajectory which came from the refitting step More... | |
edm::ESHandle< GlobalTrackingGeometry > | trackingGeometry () const |
the tracking geometry More... | |
TrackTransformer (const edm::ParameterSet &) | |
Constructor. More... | |
std::vector< Trajectory > | transform (const reco::Track &) const override |
Convert a reco::Track into Trajectory. More... | |
std::vector< Trajectory > | transform (const reco::TrackRef &) const |
Convert a reco::TrackRef into Trajectory. More... | |
std::vector< Trajectory > | transform (const reco::TransientTrack &, TransientTrackingRecHit::ConstRecHitContainer &) const |
Convert a reco::TrackRef into Trajectory, refit with a new set of hits. More... | |
~TrackTransformer () override | |
Destructor. More... | |
Public Member Functions inherited from TrackTransformerBase | |
TrackTransformerBase () | |
Constructor. More... | |
virtual | ~TrackTransformerBase () |
Destructor. More... | |
Static Public Member Functions | |
static void | fillPSetDescription (edm::ParameterSetDescription &descriptions, bool DoPredictionsOnly=false, const std::string &Fitter="KFFitterForRefitInsideOut", const std::string &Smoother="KFSmootherForRefitInsideOut", const std::string &Propagator="SmartPropagatorAnyRK", const std::string &RefitDirection="alongMomentum", bool RefitRPCHits=true, const std::string &TrackerRecHitBuilder="WithTrackAngle", const std::string &MuonRecHitBuilder="MuonRecHitBuilder", const std::string &MTDRecHitBuilder="MTDRecHitBuilder") |
fillDescriptions More... | |
Private Member Functions | |
RefitDirection::GeometricalDirection | checkRecHitsOrdering (TransientTrackingRecHit::ConstRecHitContainer const &) const |
edm::ESHandle< Propagator > const & | propagator () const |
Private Attributes | |
TkClonerImpl | hitCloner |
unsigned long long | theCacheId_GTG = 0 |
unsigned long long | theCacheId_MG = 0 |
unsigned long long | theCacheId_TC = 0 |
unsigned long long | theCacheId_TRH = 0 |
const bool | theDoPredictionsOnly |
std::unique_ptr< TrajectoryFitter > | theFitter |
const std::string | theFitterName |
edm::ESHandle< MagneticField > | theMGField |
bool | theMtdAvailable |
edm::ESHandle< TransientTrackingRecHitBuilder > | theMTDRecHitBuilder |
const std::string | theMTDRecHitBuilderName |
edm::ESHandle< TransientTrackingRecHitBuilder > | theMuonRecHitBuilder |
const std::string | theMuonRecHitBuilderName |
edm::ESHandle< Propagator > | thePropagator |
const std::string | thePropagatorName |
const RefitDirection | theRefitDirection |
const bool | theRPCInTheFit |
std::unique_ptr< TrajectorySmoother > | theSmoother |
const std::string | theSmootherName |
edm::ESHandle< TransientTrackingRecHitBuilder > | theTrackerRecHitBuilder |
const std::string | theTrackerRecHitBuilderName |
edm::ESHandle< GlobalTrackingGeometry > | theTrackingGeometry |
This class takes a reco::Track and refits the rechits inside it. The final result is a Trajectory refitted and smoothed. To make the refitting (and the smoothing) the usual KF tools are used.
CAVEAT: till now (it will be changed in the near future) the class stores the pointers to the services, therefore EACH event the setServices(const edm::EventSetup&) method MUST be called in the code in which the TrackTransformer is used.
This class takes a reco::Track and refits the rechits inside it. The final result is a Trajectory refitted and smoothed. To make the refitting (and the smoothing) the usual KF tools are used.
CAVEAT: till now (it will be changed in the near future) the class stores the pointers to the services, therefore EACH event the setServices(const edm::EventSetup&) method MUST be called in the code in which the TrackTransformer is used.
Rec hits are ordered in rank of increasing |z| assuing muons are coming from the top of the detector.
$Date: 2009/01/15 author R. Bellan - CERN ricca modified for zed ordering by N. Kypreos - UF rdo. bella n@ce rn.chnicho las. theod ore. kypre os@c ern.c h
This class takes a reco::Track and refits the rechits inside it. The final result is a Trajectory refitted and smoothed. To make the refitting (and the smoothing) the usual KF tools are used.
CAVEAT: till now (it will be changed in the near future) the class stores the pointers to the services, therefore EACH event the setServices(const edm::EventSetup&) method MUST be called in the code in which the TrackTransformer is used.
Definition at line 44 of file TrackTransformer.h.
|
explicit |
Constructor.
Definition at line 31 of file TrackTransformer.cc.
|
override |
|
private |
Definition at line 145 of file TrackTransformer.cc.
References dqmdumpme::first, GlobalTrackingGeometry::idToDet(), RefitDirection::insideOut, dqmdumpme::last, LogDebug, PV3DBase< T, PVType, FrameType >::mag2(), RefitDirection::outsideIn, position, trackingGeometry(), and RefitDirection::undetermined.
Referenced by transform().
|
static |
fillDescriptions
Definition at line 45 of file TrackTransformer.cc.
References edm::ParameterSetDescription::add(), trackingRecoMaterialAnalyzer_cfi::DoPredictionsOnly, HLTSiStripMonitoring_cff::Fitter, trackingRecoMaterialAnalyzer_cfi::MTDRecHitBuilder, trackingRecoMaterialAnalyzer_cfi::MuonRecHitBuilder, LaserSeedGenerator_cfi::Propagator, trackingRecoMaterialAnalyzer_cfi::RefitDirection, MuonAlignmentFromReference_cff::RefitRPCHits, HLTSiStripMonitoring_cff::Smoother, AlCaHLTBitMon_QueryRunRegistry::string, and trackingRecoMaterialAnalyzer_cfi::TrackerRecHitBuilder.
Referenced by L3MuonProducer::fillDescriptions(), and TrackExtenderWithMTDT< TrackCollection >::fillDescriptions().
TransientTrackingRecHit::ConstRecHitContainer TrackTransformer::getTransientRecHits | ( | const reco::TransientTrack & | track | ) | const |
Definition at line 117 of file TrackTransformer.cc.
References TransientTrackingRecHitBuilder::build(), watchdog::const, Exception, FastTime, DetId::Forward, LogTrace, DetId::Muon, edm::ESHandle< T >::product(), reco::TransientTrack::recHitsBegin(), reco::TransientTrack::recHitsEnd(), mps_fire::result, theMtdAvailable, theMTDRecHitBuilder, theMuonRecHitBuilder, theRPCInTheFit, theTrackerRecHitBuilder, and DetId::Tracker.
Referenced by transform().
|
inline |
the magnetic field
Definition at line 76 of file TrackTransformer.h.
Referenced by transform().
|
inlineprivate |
Definition at line 115 of file TrackTransformer.h.
Referenced by transform().
|
inline |
the refitter used to refit the reco::Track
Definition at line 85 of file TrackTransformer.h.
|
overridevirtual |
set the services needed by the TrackTransformer
Implements TrackTransformerBase.
Definition at line 66 of file TrackTransformer.cc.
References TrajectorySmoother::clone(), TrajectoryFitter::clone(), watchdog::const, edm::EventSetup::get(), hitCloner, edm::ESHandleBase::isValid(), LogTrace, metname, edm::ESHandle< T >::product(), AlCaHLTBitMon_QueryRunRegistry::string, theCacheId_GTG, theCacheId_MG, theCacheId_TC, theCacheId_TRH, theFitter, theFitterName, theMGField, theMtdAvailable, theMTDRecHitBuilder, theMTDRecHitBuilderName, theMuonRecHitBuilder, theMuonRecHitBuilderName, thePropagator, thePropagatorName, theSmoother, theSmootherName, theTrackerRecHitBuilder, theTrackerRecHitBuilderName, and theTrackingGeometry.
Referenced by TrackingRecoMaterialAnalyser::analyze(), MuonKinkFinder::init(), MuonReSeeder::produce(), TrackerToMuonPropagator::produce(), CSCOverlapsAlignmentAlgorithm::run(), and GlobalTrajectoryBuilderBase::setEvent().
|
inline |
the smoother used to smooth the trajectory which came from the refitting step
Definition at line 88 of file TrackTransformer.h.
References HLT_2018_cff::track.
|
inline |
the tracking geometry
Definition at line 79 of file TrackTransformer.h.
Referenced by checkRecHitsOrdering(), and transform().
|
overridevirtual |
Convert a reco::Track into Trajectory.
Convert Tracks into Trajectories.
Implements TrackTransformerBase.
Definition at line 164 of file TrackTransformer.cc.
References getTransientRecHits(), magneticField(), metname, AlCaHLTBitMon_QueryRunRegistry::string, HLT_2018_cff::track, and trackingGeometry().
Referenced by TrackingRecoMaterialAnalyser::analyze(), GlobalTrajectoryBuilderBase::build(), CSCPairResidualsConstraint::dphidzFromTrack(), MuonKinkFinder::fillTrkKink(), MuonReSeeder::produce(), TrackerToMuonPropagator::produce(), and transform().
vector< Trajectory > TrackTransformer::transform | ( | const reco::TrackRef & | track | ) | const |
Convert a reco::TrackRef into Trajectory.
Definition at line 115 of file TrackTransformer.cc.
References transform().
vector< Trajectory > TrackTransformer::transform | ( | const reco::TransientTrack & | track, |
TransientTrackingRecHit::ConstRecHitContainer & | recHitsForReFit | ||
) | const |
Convert a reco::TrackRef into Trajectory, refit with a new set of hits.
Convert Tracks into Trajectories with a given set of hits.
Definition at line 174 of file TrackTransformer.cc.
References alongMomentum, anyDirection, checkRecHitsOrdering(), RefitDirection::geometricalDirection(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), reco::Track::innerDetId(), reco::TransientTrack::innermostMeasurementState(), RefitDirection::insideOut, TrajectoryStateOnSurface::isValid(), LogTrace, metname, oppositeToMomentum, reco::Track::outerDetId(), reco::TransientTrack::outermostMeasurementState(), RefitDirection::outsideIn, AlCaHLTBitMon_ParallelJobs::p, position, Propagator::propagate(), RefitDirection::propagationDirection(), propagator(), Trajectory::push(), groupFilesInBlocks::reverse, SurveyInfoScenario_cff::seed, AlCaHLTBitMon_QueryRunRegistry::string, TrajectoryStateOnSurface::surface(), theDoPredictionsOnly, theFitter, theRefitDirection, theSmoother, reco::TransientTrack::track(), FastTrackerRecHitMaskProducer_cfi::trajectories, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
|
private |
Definition at line 120 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 96 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 97 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 95 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 98 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 102 of file TrackTransformer.h.
Referenced by transform().
|
private |
Definition at line 109 of file TrackTransformer.h.
Referenced by setServices(), and transform().
|
private |
Definition at line 108 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 106 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 126 of file TrackTransformer.h.
Referenced by getTransientRecHits(), and setServices().
|
private |
Definition at line 127 of file TrackTransformer.h.
Referenced by getTransientRecHits(), and setServices().
|
private |
Definition at line 125 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 123 of file TrackTransformer.h.
Referenced by getTransientRecHits(), and setServices().
|
private |
Definition at line 122 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 116 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 114 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 103 of file TrackTransformer.h.
Referenced by transform().
|
private |
Definition at line 100 of file TrackTransformer.h.
Referenced by getTransientRecHits().
|
private |
Definition at line 112 of file TrackTransformer.h.
Referenced by setServices(), and transform().
|
private |
Definition at line 111 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 119 of file TrackTransformer.h.
Referenced by getTransientRecHits(), and setServices().
|
private |
Definition at line 118 of file TrackTransformer.h.
Referenced by setServices().
|
private |
Definition at line 105 of file TrackTransformer.h.
Referenced by setServices().