#include <TrackingRegionBase.h>
Public Member Functions | |
virtual HitRZCompatibility * | checkRZ (const DetLayer *layer, const Hit &outerHit, const edm::EventSetup &iSetup) const =0 |
virtual TrackingRegionBase * | clone () const =0 |
clone region | |
virtual GlobalVector | direction () const |
the direction around which region is constructed | |
virtual Range | invPtRange () const |
inverse pt range | |
virtual GlobalPoint | origin () const |
virtual float | originRBound () const |
bounds the particle vertex in the transverse plane | |
virtual float | originZBound () const |
bounds the particle vertex in the longitudinal plane | |
virtual std::string | print () const |
virtual float | ptMin () const |
minimal pt of interest | |
virtual TrackingRegionBase * | restrictedRegion (const GlobalPoint &originPos, const float &originRBound, const float &originZBound) const |
clone region with new vertex position | |
virtual void | setDirection (const GlobalVector &dir) |
TrackingRegionBase (const GlobalVector &direction, const GlobalPoint &originPos, const Range &invPtRange, const float &originRBound, const float &originZBound) | |
TrackingRegionBase () | |
virtual | ~TrackingRegionBase () |
Private Attributes | |
GlobalVector | theDirection |
Range | theInvPtRange |
GlobalPoint | theVertexPos |
float | theVertexRBound |
float | theVertexZBound |
kinematic data common to some concreate implementations of TrackingRegion.
Definition at line 17 of file TrackingRegionBase.h.
TrackingRegionBase::TrackingRegionBase | ( | const GlobalVector & | direction, |
const GlobalPoint & | originPos, | ||
const Range & | invPtRange, | ||
const float & | originRBound, | ||
const float & | originZBound | ||
) | [inline] |
Definition at line 21 of file TrackingRegionBase.h.
: theDirection( direction), theVertexPos( originPos), theInvPtRange( invPtRange), theVertexRBound( originRBound), theVertexZBound( originZBound) { }
TrackingRegionBase::TrackingRegionBase | ( | ) | [inline] |
virtual TrackingRegionBase::~TrackingRegionBase | ( | ) | [inline, virtual] |
virtual HitRZCompatibility* TrackingRegionBase::checkRZ | ( | const DetLayer * | layer, |
const Hit & | outerHit, | ||
const edm::EventSetup & | iSetup | ||
) | const [pure virtual] |
utility to check eta/theta hit compatibility with region constraints and outer hit constraint
Implements TrackingRegion.
Implemented in CosmicTrackingRegion, GlobalTrackingRegion, and RectangularEtaPhiTrackingRegion.
virtual TrackingRegionBase* TrackingRegionBase::clone | ( | ) | const [pure virtual] |
clone region
Implements TrackingRegion.
Implemented in CosmicTrackingRegion, GlobalTrackingRegion, and RectangularEtaPhiTrackingRegion.
Referenced by restrictedRegion().
virtual GlobalVector TrackingRegionBase::direction | ( | ) | const [inline, virtual] |
the direction around which region is constructed
Implements TrackingRegion.
Definition at line 37 of file TrackingRegionBase.h.
References theDirection.
Referenced by GlobalTrajectoryBuilderBase::chooseRegionalTrackerTracks(), TrackerSeedCleaner::clean(), FastTSGFromIOHit::clean(), FastTSGFromL2Muon::clean(), GlobalTrajectoryBuilderBase::defineRegionOfInterest(), and CosmicRegionalSeedGenerator::regions().
{ return theDirection; }
virtual Range TrackingRegionBase::invPtRange | ( | ) | const [inline, virtual] |
inverse pt range
Definition at line 57 of file TrackingRegionBase.h.
References theInvPtRange.
{ return theInvPtRange; }
virtual GlobalPoint TrackingRegionBase::origin | ( | ) | const [inline, virtual] |
The origin (centre,vertex) of the region.
The origin with bounds is ment to constraint point of the
closest approach of the track to the beam line
Implements TrackingRegion.
Definition at line 43 of file TrackingRegionBase.h.
References theVertexPos.
Referenced by GlobalTrajectoryBuilderBase::defineRegionOfInterest().
{ return theVertexPos; }
virtual float TrackingRegionBase::originRBound | ( | ) | const [inline, virtual] |
bounds the particle vertex in the transverse plane
Implements TrackingRegion.
Definition at line 46 of file TrackingRegionBase.h.
References theVertexRBound.
Referenced by GlobalTrajectoryBuilderBase::defineRegionOfInterest(), and restrictedRegion().
{ return theVertexRBound; }
virtual float TrackingRegionBase::originZBound | ( | ) | const [inline, virtual] |
bounds the particle vertex in the longitudinal plane
Implements TrackingRegion.
Definition at line 49 of file TrackingRegionBase.h.
References theVertexZBound.
Referenced by GlobalTrajectoryBuilderBase::defineRegionOfInterest(), and restrictedRegion().
{ return theVertexZBound; }
virtual std::string TrackingRegionBase::print | ( | void | ) | const [inline, virtual] |
Implements TrackingRegion.
Reimplemented in GlobalTrackingRegion, and RectangularEtaPhiTrackingRegion.
Definition at line 79 of file TrackingRegionBase.h.
References PixelRecoRange< T >::max(), TrackingRegion::name(), theDirection, theInvPtRange, theVertexPos, theVertexRBound, and theVertexZBound.
{ std::ostringstream str; str << name() <<" dir:"<<theDirection<<" vtx:"<<theVertexPos <<" dr:"<<theVertexRBound<<" dz:"<<theVertexZBound<<" pt:"<<1./theInvPtRange.max(); return str.str(); }
virtual float TrackingRegionBase::ptMin | ( | ) | const [inline, virtual] |
minimal pt of interest
Implements TrackingRegion.
Definition at line 52 of file TrackingRegionBase.h.
References max(), PixelRecoRange< T >::max(), PixelRecoRange< T >::min(), and theInvPtRange.
Referenced by TrackerSeedCleaner::clean(), FastTSGFromL2Muon::clean(), FastTSGFromIOHit::clean(), GlobalTrajectoryBuilderBase::defineRegionOfInterest(), SimpleCosmicBONSeeder::seeds(), and SimpleCosmicBONSeeder::triplets().
{ return 1./std::max(fabs(theInvPtRange.max()), fabs(theInvPtRange.min())); }
virtual TrackingRegionBase* TrackingRegionBase::restrictedRegion | ( | const GlobalPoint & | originPos, |
const float & | originRBound, | ||
const float & | originZBound | ||
) | const [inline, virtual] |
clone region with new vertex position
Implements TrackingRegion.
Definition at line 68 of file TrackingRegionBase.h.
References clone(), originRBound(), originZBound(), theVertexPos, theVertexRBound, and theVertexZBound.
{ TrackingRegionBase* restr = clone(); restr->theVertexPos = originPos; restr->theVertexRBound = originRBound; restr->theVertexZBound = originZBound; return restr; }
virtual void TrackingRegionBase::setDirection | ( | const GlobalVector & | dir | ) | [inline, virtual] |
Definition at line 86 of file TrackingRegionBase.h.
References dir, and theDirection.
{ theDirection = dir; }
GlobalVector TrackingRegionBase::theDirection [private] |
Definition at line 90 of file TrackingRegionBase.h.
Referenced by direction(), print(), and setDirection().
Range TrackingRegionBase::theInvPtRange [private] |
Definition at line 92 of file TrackingRegionBase.h.
Referenced by invPtRange(), print(), and ptMin().
GlobalPoint TrackingRegionBase::theVertexPos [private] |
Definition at line 91 of file TrackingRegionBase.h.
Referenced by origin(), print(), and restrictedRegion().
float TrackingRegionBase::theVertexRBound [private] |
Definition at line 93 of file TrackingRegionBase.h.
Referenced by originRBound(), print(), and restrictedRegion().
float TrackingRegionBase::theVertexZBound [private] |
Definition at line 94 of file TrackingRegionBase.h.
Referenced by originZBound(), print(), and restrictedRegion().