#include <RectangularEtaPhiTrackingRegion.h>
Public Types | |
typedef TkTrackingRegionsMargin< float > | Margin |
enum | UseMeasurementTracker { UseMeasurementTracker::kNever = -1, UseMeasurementTracker::kForSiStrips = 0, UseMeasurementTracker::kAlways = 1 } |
Public Types inherited from TrackingRegion | |
typedef SeedingLayerSetsHits::ConstRecHitPointer | Hit |
typedef SeedingLayerSetsHits::Hits | Hits |
typedef PixelRecoRange< float > | Range |
Public Member Functions | |
HitRZCompatibility * | checkRZ (const DetLayer *layer, const Hit &outerHit, const edm::EventSetup &iSetup, const DetLayer *outerlayer=0, float lr=0, float gz=0, float dr=0, float dz=0) const override |
RectangularEtaPhiTrackingRegion * | clone () const override |
const Range & | etaRange () const |
allowed eta range [eta_min, eta_max] interval More... | |
TrackingRegion::Hits | hits (const edm::EventSetup &es, const SeedingLayerSetsHits::SeedingLayer &layer) const override |
get hits from layer compatible with region constraints More... | |
bool | isPrecise () const |
is precise error calculation switched on More... | |
std::string | name () const override |
RectangularEtaPhiTrackingRegion & | operator= (RectangularEtaPhiTrackingRegion const &)=delete |
RectangularEtaPhiTrackingRegion & | operator= (RectangularEtaPhiTrackingRegion &&)=default |
const Margin & | phiMargin () const |
std::string | print () const override |
RectangularEtaPhiTrackingRegion (RectangularEtaPhiTrackingRegion const &rh) | |
RectangularEtaPhiTrackingRegion (RectangularEtaPhiTrackingRegion &&)=default | |
RectangularEtaPhiTrackingRegion (const GlobalVector &dir, const GlobalPoint &vertexPos, float ptMin, float rVertex, float zVertex, float deltaEta, float deltaPhi, UseMeasurementTracker whereToUseMeasurementTracker=UseMeasurementTracker::kNever, bool precise=true, const MeasurementTrackerEvent *measurementTracker=0, bool etaPhiRegion=false) | |
RectangularEtaPhiTrackingRegion (const GlobalVector &dir, const GlobalPoint &vertexPos, float ptMin, float rVertex, float zVertex, Margin etaMargin, Margin phiMargin, UseMeasurementTracker whereToUseMeasurementTracker=UseMeasurementTracker::kNever, bool precise=true, const MeasurementTrackerEvent *measurementTracker=0, bool etaPhiRegion=false) | |
RectangularEtaPhiTrackingRegion (const GlobalVector &dir, const GlobalPoint &vertexPos, Range invPtRange, float rVertex, float zVertex, Margin etaMargin, Margin phiMargin, UseMeasurementTracker whereToUseMeasurementTracker=UseMeasurementTracker::kNever, bool precise=true, const MeasurementTrackerEvent *measurementTracker=0, bool etaPhiRegion=false, bool useMS=true) | |
const Range & | tanLambdaRange () const |
Public Member Functions inherited from TrackingRegion | |
GlobalVector const & | direction () const |
the direction around which region is constructed More... | |
Range | invPtRange () const |
inverse pt range More... | |
GlobalPoint const & | origin () const |
float | originRBound () const |
bounds the particle vertex in the transverse plane More... | |
float | originZBound () const |
bounds the particle vertex in the longitudinal plane More... | |
float | phiDirection () const |
float | ptMin () const |
minimal pt of interest More... | |
TrackingRegion * | restrictedRegion (const GlobalPoint &originPos, const float &originRBound, const float &originZBound) const |
clone region with new vertex position More... | |
TrackingRegion (const GlobalVector &direction, const GlobalPoint &originPos, const Range &invPtRange, const float &originRBound, const float &originZBound) | |
GlobalVector const & | unitDirection () const |
virtual | ~TrackingRegion () |
Static Public Member Functions | |
static UseMeasurementTracker | doubleToUseMeasurementTracker (double value) |
static UseMeasurementTracker | intToUseMeasurementTracker (int value) |
static UseMeasurementTracker | stringToUseMeasurementTracker (const std::string &name) |
Private Types | |
using | cacheHitPointer = mayown_ptr< BaseTrackerRecHit > |
using | cacheHits = std::vector< cacheHitPointer > |
Private Member Functions | |
HitRZCompatibility * | checkRZOld (const DetLayer *layer, const Hit &outerHit, const edm::EventSetup &iSetup, const DetLayer *outerlayer) const |
std::unique_ptr< MeasurementEstimator > | estimator (const BarrelDetLayer *layer, const edm::EventSetup &iSetup) const |
std::unique_ptr< MeasurementEstimator > | estimator (const ForwardDetLayer *layer, const edm::EventSetup &iSetup) const |
void | initEtaRange (const GlobalVector &dir, const Margin &margin) |
OuterHitPhiPrediction | phiWindow (const edm::EventSetup &iSetup) const |
HitRZConstraint | rzConstraint () const |
Private Attributes | |
cacheHits | cache |
Range | theEtaRange |
Range | theLambdaRange |
float | theMeanLambda |
const MeasurementTrackerEvent * | theMeasurementTracker = 0 |
const UseMeasurementTracker | theMeasurementTrackerUsage = UseMeasurementTracker::kNever |
Margin | thePhiMargin |
bool | thePrecise =false |
bool | theUseEtaPhi =false |
bool | theUseMS =false |
A concrete implementation of TrackingRegion. Apart of vertex constraint from TrackingRegion in this implementation the region of interest is further constrainted in phi and eta around the direction of the region
Definition at line 28 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 207 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 208 of file RectangularEtaPhiTrackingRegion.h.
typedef TkTrackingRegionsMargin<float> RectangularEtaPhiTrackingRegion::Margin |
Definition at line 65 of file RectangularEtaPhiTrackingRegion.h.
Enumerator | |
---|---|
kNever | |
kForSiStrips | |
kAlways |
Definition at line 30 of file RectangularEtaPhiTrackingRegion.h.
|
inline |
Definition at line 50 of file RectangularEtaPhiTrackingRegion.h.
References operator=().
Referenced by clone().
|
default |
|
inline |
constructor (symmetric eta and phi margins).
dir - the direction around which region is constructed
the initial direction of the momentum of the particle should be in the range
phi of dir +- deltaPhi
eta of dir +- deltaEta
vertexPos - the position of the vertex (origin) of the of the region.
It is a centre of cylinder constraind with rVertex, zVertex. The track of the particle should cross the cylinder
WARNING: in the current implementaion the vertexPos is supposed to be placed on the beam line, i.e. to be of the form (0,0,float)
ptMin - minimal pt of interest
rVertex - radius of the cylinder around beam line where the tracks of interest should point to.
zVertex - half height of the cylinder around the beam line where the tracks of interest should point to.
deltaEta - allowed deviation of the initial direction of particle in eta in respect to direction of the region
deltaPhi - allowed deviation of the initial direction of particle in phi in respect to direction of the region whereToUseMeasurementTracker: 1=everywhere, 0=outside pixles, -1=nowhere
Definition at line 92 of file RectangularEtaPhiTrackingRegion.h.
|
inline |
constructor (asymmetrinc eta and phi margins).
non equal left-right eta and phi bounds around direction are possible. The ranges are defined using Margin
. the meaning of other arguments is the same as in the case of symmetring bounds to direction of the region.
Definition at line 113 of file RectangularEtaPhiTrackingRegion.h.
|
inline |
constructor (explicit pt range, asymmetrinc eta and phi margins).
the meaning of other arguments is the same as in the case of symmetring bounds to direction of the region.
Definition at line 132 of file RectangularEtaPhiTrackingRegion.h.
References initEtaRange().
|
inlineoverridevirtual |
utility to check eta/theta hit compatibility with region constraints and outer hit constraint
Implements TrackingRegion.
Definition at line 164 of file RectangularEtaPhiTrackingRegion.h.
References checkRZOld().
|
private |
Definition at line 69 of file RectangularEtaPhiTrackingRegion.cc.
References funct::abs(), GeomDetEnumerators::barrel, corr, SimpleLineRZ::cotLine(), f, gedGsfElectrons_cfi::isBarrel, DetLayer::location(), SiStripPI::max, min(), SurfaceOrientation::outer, ptMin, DetLayer::seqNum(), funct::sqr(), mathSSE::sqrt(), vtxMean(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), PixelRecoPointRZ::z(), PV3DBase< T, PVType, FrameType >::z(), and PixelRecoLineRZ::zAtR().
Referenced by checkRZ(), initEtaRange(), and name().
|
inlineoverridevirtual |
Implements TrackingRegion.
Definition at line 171 of file RectangularEtaPhiTrackingRegion.h.
References RectangularEtaPhiTrackingRegion().
|
inlinestatic |
Definition at line 41 of file RectangularEtaPhiTrackingRegion.h.
References kAlways, kForSiStrips, kNever, name(), AlCaHLTBitMon_QueryRunRegistry::string, and stringToUseMeasurementTracker().
|
private |
Definition at line 144 of file RectangularEtaPhiTrackingRegion.cc.
References funct::abs(), Surface::bounds(), PixelRecoRange< T >::empty(), f, reco::helper::VirtualJetProducerHelper::intersection(), PixelRecoRange< T >::intersection(), Bounds::length(), PixelRecoUtilities::longitudinalBendingCorrection(), PixelRecoRange< T >::max(), SiStripPI::max, PixelRecoRange< T >::mean(), PixelRecoRange< T >::min(), min(), trackingPOGFilters_cfi::phiWindow, GeometricSearchDet::position(), ptMin, TCMET_cfi::radius, HitZCheck::range(), OuterHitPhiPrediction::setTolerance(), HitZCheck::setTolerance(), BarrelDetLayer::specificSurface(), funct::sqr(), mathSSE::sqrt(), BarrelDetLayer::surface(), Bounds::thickness(), w2, and PV3DBase< T, PVType, FrameType >::z().
Referenced by name().
|
private |
Definition at line 209 of file RectangularEtaPhiTrackingRegion.cc.
References funct::abs(), Surface::bounds(), PixelRecoRange< T >::empty(), reco::helper::VirtualJetProducerHelper::intersection(), PixelRecoRange< T >::intersection(), PixelRecoUtilities::longitudinalBendingCorrection(), PixelRecoRange< T >::max(), PixelRecoRange< T >::mean(), PixelRecoRange< T >::min(), trackingPOGFilters_cfi::phiWindow, GeometricSearchDet::position(), ptMin, OuterHitPhiPrediction::setTolerance(), ForwardDetLayer::specificSurface(), funct::sqr(), mathSSE::sqrt(), ForwardDetLayer::surface(), Bounds::thickness(), w2, and PV3DBase< T, PVType, FrameType >::z().
|
inline |
allowed eta range [eta_min, eta_max] interval
Definition at line 150 of file RectangularEtaPhiTrackingRegion.h.
References theEtaRange.
Referenced by FastTSGFromL2Muon::clean(), FastTSGFromIOHit::clean(), and TrackerSeedCleaner::clean().
|
overridevirtual |
get hits from layer compatible with region constraints
Implements TrackingRegion.
Definition at line 301 of file RectangularEtaPhiTrackingRegion.cc.
References alongMomentum, GeomDetEnumerators::barrel, Plane::build(), helperFunctions::cache(), funct::cos(), SeedingLayerSetsHits::SeedingLayer::detLayer(), dir, GeomDetEnumerators::endcap, f, edm::EventSetup::get(), h, hfClusterShapes_cfi::hits, SeedingLayerSetsHits::SeedingLayer::hits(), GeomDetEnumerators::isBarrel(), GeomDetEnumerators::isEndcap(), GeomDetEnumerators::isTrackerPixel(), GeomDetEnumerators::isTrackerStrip(), DetLayer::location(), LogDebug, eostools::move(), edm::ESHandle< T >::product(), mps_fire::result, makeMuonMisalignmentScenario::rot, funct::sin(), DetLayer::subDetector(), and badGlobalMuonTaggersAOD_cff::vtx.
Referenced by isPrecise().
|
private |
Definition at line 61 of file RectangularEtaPhiTrackingRegion.cc.
References checkRZOld(), PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), TkTrackingRegionsMargin< T >::left(), and TkTrackingRegionsMargin< T >::right().
Referenced by name(), and RectangularEtaPhiTrackingRegion().
|
inlinestatic |
Definition at line 36 of file RectangularEtaPhiTrackingRegion.h.
References relativeConstraints::value.
Referenced by MuonTrackingRegionBuilder::build(), and SeedFilter::SeedFilter().
|
inline |
is precise error calculation switched on
Definition at line 158 of file RectangularEtaPhiTrackingRegion.h.
References hits(), and thePrecise.
|
inlineoverridevirtual |
Reimplemented from TrackingRegion.
Definition at line 175 of file RectangularEtaPhiTrackingRegion.h.
References checkRZOld(), dir, dso_internal, estimator(), initEtaRange(), margin, phiWindow(), print(), rzConstraint(), and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by config.CFG::__str__(), validation.Sample::digest(), and doubleToUseMeasurementTracker().
|
delete |
Referenced by RectangularEtaPhiTrackingRegion().
|
default |
|
inline |
defined phi range around phi0, margin is [phi_left,phi_right]. region is defined in a range: [phi0-phi_left, phi0+phi_right]
Definition at line 155 of file RectangularEtaPhiTrackingRegion.h.
References thePhiMargin.
Referenced by FastTSGFromL2Muon::clean(), FastTSGFromIOHit::clean(), TrackerSeedCleaner::clean(), and SeedFromConsecutiveHitsCreator::makeSeed().
|
private |
Definition at line 267 of file RectangularEtaPhiTrackingRegion.cc.
References PixelRecoUtilities::curvature(), SiStripPI::max, and min().
Referenced by name().
|
overridevirtual |
Reimplemented from TrackingRegion.
Definition at line 424 of file RectangularEtaPhiTrackingRegion.cc.
References TrackingRegion::print(), and str.
Referenced by name().
|
private |
Definition at line 280 of file RectangularEtaPhiTrackingRegion.cc.
References hfnoseDigiStudy_cfi::rMax, hfnoseDigiStudy_cfi::rMin, hfnoseDigiStudy_cfi::zMax, and hfnoseDigiStudy_cfi::zMin.
Referenced by name().
|
static |
Definition at line 49 of file RectangularEtaPhiTrackingRegion.cc.
References Exception, dataset::name, AlCaHLTBitMon_QueryRunRegistry::string, tmp, and create_public_lumi_plots::transform.
Referenced by AreaSeededTrackingRegionsBuilder::AreaSeededTrackingRegionsBuilder(), CandidatePointSeededTrackingRegionsProducer::CandidatePointSeededTrackingRegionsProducer(), CandidateSeededTrackingRegionsProducer::CandidateSeededTrackingRegionsProducer(), doubleToUseMeasurementTracker(), L3MumuTrackingRegion::L3MumuTrackingRegion(), PointSeededTrackingRegionsProducer::PointSeededTrackingRegionsProducer(), TauRegionalPixelSeedGenerator::TauRegionalPixelSeedGenerator(), and TrackingRegionsFromBeamSpotAndL2Tau::TrackingRegionsFromBeamSpotAndL2Tau().
|
inline |
Definition at line 151 of file RectangularEtaPhiTrackingRegion.h.
References theLambdaRange.
Referenced by SeedFromConsecutiveHitsCreator::makeSeed().
|
mutableprivate |
Definition at line 216 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 195 of file RectangularEtaPhiTrackingRegion.h.
Referenced by etaRange().
|
private |
Definition at line 196 of file RectangularEtaPhiTrackingRegion.h.
Referenced by tanLambdaRange().
|
private |
Definition at line 198 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 203 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 199 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 197 of file RectangularEtaPhiTrackingRegion.h.
Referenced by phiMargin().
|
private |
Definition at line 200 of file RectangularEtaPhiTrackingRegion.h.
Referenced by isPrecise().
|
private |
Definition at line 202 of file RectangularEtaPhiTrackingRegion.h.
|
private |
Definition at line 201 of file RectangularEtaPhiTrackingRegion.h.