![]() |
![]() |
#include <TransientTrackingRecHit.h>
Public Types | |
typedef std::vector < ConstRecHitPointer > | ConstRecHitContainer |
typedef ConstReferenceCountingPointer < TransientTrackingRecHit > | ConstRecHitPointer |
typedef std::vector < ConstRecHitPointer > | RecHitContainer |
typedef ReferenceCountingPointer < TransientTrackingRecHit > | RecHitPointer |
Public Member Functions | |
virtual bool | canImproveWithTrack () const |
virtual RecHitPointer | clone (const TrajectoryStateOnSurface &ts) const |
virtual float | clusterProbability () const |
cluster probability, overloaded by pixel rechits. | |
const GeomDet * | det () const |
The GomeDet* can be zero for InvalidTransientRecHits and for TConstraintRecHit2Ds. | |
virtual const GeomDetUnit * | detUnit () const |
float | errorGlobalR () const |
float | errorGlobalRPhi () const |
float | errorGlobalZ () const |
float | getAnnealingFactor () const |
virtual GlobalPoint | globalPosition () const |
virtual GlobalError | globalPositionError () const |
virtual const TrackingRecHit * | hit () const =0 |
void | setAnnealingFactor (float annealing) |
void | setWeight (float weight) |
interface needed to set the transient hit weight and to read it back | |
virtual const Surface * | surface () const |
virtual ConstRecHitContainer | transientHits () const |
Composite interface: returns the component hits, if any. | |
TransientTrackingRecHit (const GeomDet *geom, TrackingRecHit const &rh, float weight=1., float annealing=1.) | |
TransientTrackingRecHit (const GeomDet *geom=0, float weight=1., float annealing=1.) | |
TransientTrackingRecHit (const GeomDet *geom, DetId id, Type type=valid, float weight=1., float annealing=1.) | |
TransientTrackingRecHit (const GeomDet *geom, TrackingRecHit::id_type id, Type type=valid, float weight=1., float annealing=1.) | |
float | weight () const |
Private Member Functions | |
virtual TransientTrackingRecHit * | clone () const =0 |
void | setPositionErrors () const |
Private Attributes | |
float | annealing_ |
float | errorR_ |
float | errorRPhi_ |
float | errorZ_ |
const GeomDet * | geom_ |
GlobalError | globalError_ |
GlobalPoint | globalPosition_ |
bool | hasGlobalError_ |
bool | hasGlobalPosition_ |
float | weight_ |
Definition at line 14 of file TransientTrackingRecHit.h.
typedef std::vector<ConstRecHitPointer> TransientTrackingRecHit::ConstRecHitContainer |
Definition at line 23 of file TransientTrackingRecHit.h.
typedef ConstReferenceCountingPointer< TransientTrackingRecHit> TransientTrackingRecHit::ConstRecHitPointer |
Definition at line 21 of file TransientTrackingRecHit.h.
typedef std::vector<ConstRecHitPointer> TransientTrackingRecHit::RecHitContainer |
Definition at line 22 of file TransientTrackingRecHit.h.
Definition at line 20 of file TransientTrackingRecHit.h.
TransientTrackingRecHit::TransientTrackingRecHit | ( | const GeomDet * | geom = 0 , |
float | weight = 1. , |
||
float | annealing = 1. |
||
) | [inline, explicit] |
Definition at line 25 of file TransientTrackingRecHit.h.
: TrackingRecHit(geom ? geom->geographicalId().rawId() : 0), geom_(geom), weight_(weight), annealing_(annealing), globalPosition_(0,0,0), globalError_(GlobalError::NullMatrix()),errorR_(0),errorZ_(0),errorRPhi_(0), hasGlobalPosition_(false), hasGlobalError_(false){}
TransientTrackingRecHit::TransientTrackingRecHit | ( | const GeomDet * | geom, |
DetId | id, | ||
Type | type = valid , |
||
float | weight = 1. , |
||
float | annealing = 1. |
||
) | [inline, explicit] |
Definition at line 32 of file TransientTrackingRecHit.h.
: TrackingRecHit(id, type), geom_(geom), weight_(weight), annealing_(annealing), globalPosition_(0,0,0), globalError_(GlobalError::NullMatrix()),errorR_(0),errorZ_(0),errorRPhi_(0), hasGlobalPosition_(false),hasGlobalError_(false){}
TransientTrackingRecHit::TransientTrackingRecHit | ( | const GeomDet * | geom, |
TrackingRecHit::id_type | id, | ||
Type | type = valid , |
||
float | weight = 1. , |
||
float | annealing = 1. |
||
) | [inline, explicit] |
Definition at line 39 of file TransientTrackingRecHit.h.
: TrackingRecHit(id, type), geom_(geom), weight_(weight), annealing_(annealing), globalPosition_(0,0,0), globalError_(GlobalError::NullMatrix()),errorR_(0),errorZ_(0),errorRPhi_(0), hasGlobalPosition_(false),hasGlobalError_(false){}
TransientTrackingRecHit::TransientTrackingRecHit | ( | const GeomDet * | geom, |
TrackingRecHit const & | rh, | ||
float | weight = 1. , |
||
float | annealing = 1. |
||
) | [inline, explicit] |
Definition at line 46 of file TransientTrackingRecHit.h.
: TrackingRecHit(rh.geographicalId(), rh.type()), geom_(geom), weight_(weight), annealing_(annealing), globalPosition_(0,0,0), globalError_(GlobalError::NullMatrix()),errorR_(0),errorZ_(0),errorRPhi_(0), hasGlobalPosition_(false),hasGlobalError_(false){}
virtual bool TransientTrackingRecHit::canImproveWithTrack | ( | ) | const [inline, virtual] |
Returns true if the clone( const TrajectoryStateOnSurface&) method returns an improved hit, false if it returns an identical copy. In order to avoid redundent copies one should call canImproveWithTrack() before calling clone( const TrajectoryStateOnSurface&).
Reimplemented in GenericProjectedRecHit2D, TRecHit1DMomConstraint, TRecHit2DPosConstraint, TSiPixelRecHit, TSiStripMatchedRecHit, TSiStripRecHit1D, TSiStripRecHit2DLocalPos, TSiTrackerMultiRecHit, GenericTransientTrackingRecHit, TransientTrackingRecHitByValue< RecHit >, and TransientTrackingRecHitByValue< InvalidTrackingRecHit >.
Definition at line 83 of file TransientTrackingRecHit.h.
{return false;}
TransientTrackingRecHit::RecHitPointer TransientTrackingRecHit::clone | ( | const TrajectoryStateOnSurface & | ts | ) | const [virtual] |
Returns a copy of the hit with parameters and errors computed with respect to the TrajectoryStateOnSurface given as argument. For concrete hits not capable to improve their parameters and errors this method returns an exact copy, and is equivalent to clone() without arguments.
Reimplemented in GenericProjectedRecHit2D, ProjectedRecHit2D, TRecHit1DMomConstraint, TRecHit2DPosConstraint, TSiPixelRecHit, TSiStripMatchedRecHit, TSiStripRecHit1D, TSiStripRecHit2DLocalPos, and TSiTrackerMultiRecHit.
Definition at line 78 of file TransientTrackingRecHit.cc.
Referenced by KFTrajectoryFitter::fit().
{ return RecHitPointer(const_cast<TransientTrackingRecHit*>(this)); }
virtual TransientTrackingRecHit* TransientTrackingRecHit::clone | ( | ) | const [private, pure virtual] |
Implements TrackingRecHit.
Implemented in BeamSpotTransientTrackingRecHit, MuonTransientTrackingRecHit, GenericProjectedRecHit2D, ProjectedRecHit2D, TRecHit1DMomConstraint, TRecHit2DPosConstraint, TSiPixelRecHit, TSiStripMatchedRecHit, TSiStripRecHit1D, TSiStripRecHit2DLocalPos, TSiTrackerMultiRecHit, GenericTransientTrackingRecHit, InvalidTransientRecHit, TransientTrackingRecHitByValue< RecHit >, and TransientTrackingRecHitByValue< InvalidTrackingRecHit >.
virtual float TransientTrackingRecHit::clusterProbability | ( | ) | const [inline, virtual] |
cluster probability, overloaded by pixel rechits.
Reimplemented in TSiPixelRecHit.
Definition at line 103 of file TransientTrackingRecHit.h.
{ return 1; }
const GeomDet* TransientTrackingRecHit::det | ( | ) | const [inline] |
The GomeDet* can be zero for InvalidTransientRecHits and for TConstraintRecHit2Ds.
Reimplemented in TRecHit1DMomConstraint, and TRecHit2DPosConstraint.
Definition at line 58 of file TransientTrackingRecHit.h.
References geom_.
Referenced by BeamSpotTransientTrackingRecHit::BeamSpotTransientTrackingRecHit(), GenericProjectedRecHit2D::clone(), TSiStripMatchedRecHit::clone(), TSiPixelRecHit::clone(), TSiStripRecHit2DLocalPos::clone(), TSiStripRecHit1D::clone(), ProjectedRecHit2D::clone(), TSiStripMatchedRecHit::ComputeCoarseLocalPosition(), TSiPixelRecHit::detUnit(), TSiTrackerMultiRecHit::detUnit(), detUnit(), TSiStripRecHit1D::detUnit(), TSiStripRecHit2DLocalPos::detUnit(), ForwardMeasurementEstimator::estimate(), InsideBoundsMeasurementEstimator::estimate(), BarrelMeasurementEstimator::estimate(), GlobalTrajectoryBuilderBase::fixTEC(), GenericProjectedRecHit2D::geographicalId(), TSiStripMatchedRecHit::getKfComponents(), TSiPixelRecHit::getKfComponents(), ProjectedRecHit2D::getKfComponents(), TSiStripRecHit2DLocalPos::getKfComponents(), TSiTrackerMultiRecHit::getKfComponents(), TSiStripRecHit1D::getKfComponents(), MuonTransientTrackingRecHit::globalDirection(), MuonTransientTrackingRecHit::globalDirectionError(), CurrentAlignmentKFUpdator::includeCurrentAlignmentEstimate(), TSiStripRecHit1D::parametersError(), TSiStripMatchedRecHit::parametersError(), TSiStripRecHit2DLocalPos::parametersError(), MuonTransientTrackingRecHit::parametersError(), TSiTrackerMultiRecHit::parametersError(), TSiPixelRecHit::parametersError(), GenericProjectedRecHit2D::parametersError(), ProjectedRecHit2D::parametersError(), TrackingRecHitProjector< ResultingHit >::project(), ProjectedRecHit2D::ProjectedRecHit2D(), RecHitPropagator::propagate(), MuonDTLocalMillepedeAlgorithm::run(), InvalidTransientRecHit::surface(), BeamSpotTransientTrackingRecHit::surface(), MatchedHitRZCorrectionFromBending::tibMatchedHitZFixup(), ClusterShapeTrajectoryFilter::toBeContinued(), MuonTransientTrackingRecHit::transientHits(), TSiStripMatchedRecHit::transientHits(), and TSiStripRecHit2DLocalPos::transientHits().
{return geom_;}
const GeomDetUnit * TransientTrackingRecHit::detUnit | ( | ) | const [virtual] |
CAUTION: the GeomDetUnit* is zero for composite hits (matched hits in the tracker, segments in the muon). Always check this pointer before using it!
Reimplemented in ProjectedRecHit2D, TRecHit1DMomConstraint, TRecHit2DPosConstraint, TSiPixelRecHit, TSiStripMatchedRecHit, TSiStripRecHit1D, TSiStripRecHit2DLocalPos, and TSiTrackerMultiRecHit.
Definition at line 6 of file TransientTrackingRecHit.cc.
References det().
Referenced by Chi2Strip1DEstimator::estimate(), Chi2StripEstimator::estimate(), Chi2Switching1DEstimator::estimate(), Chi2SwitchingEstimator::estimate(), StripMeasurementTransformator::init(), Strip1DMeasurementTransformator::init(), KFSwitching1DUpdator::update(), and KFSwitchingUpdator::update().
{ return dynamic_cast<const GeomDetUnit*>(det()); }
float TransientTrackingRecHit::errorGlobalR | ( | ) | const |
Reimplemented in BeamSpotTransientTrackingRecHit.
Definition at line 33 of file TransientTrackingRecHit.cc.
References errorR_, hasGlobalError_, and setPositionErrors().
{ if(!hasGlobalError_){ setPositionErrors(); return errorR_; }else{ return errorR_; } }
float TransientTrackingRecHit::errorGlobalRPhi | ( | ) | const |
Reimplemented in BeamSpotTransientTrackingRecHit.
Definition at line 53 of file TransientTrackingRecHit.cc.
References errorRPhi_, hasGlobalError_, and setPositionErrors().
{ if(!hasGlobalError_){ setPositionErrors(); return errorRPhi_; }else{ return errorRPhi_; } }
float TransientTrackingRecHit::errorGlobalZ | ( | ) | const |
Reimplemented in BeamSpotTransientTrackingRecHit.
Definition at line 43 of file TransientTrackingRecHit.cc.
References errorZ_, hasGlobalError_, and setPositionErrors().
{ if(!hasGlobalError_){ setPositionErrors(); return errorZ_; }else{ return errorZ_; } }
float TransientTrackingRecHit::getAnnealingFactor | ( | ) | const [inline] |
Definition at line 100 of file TransientTrackingRecHit.h.
References annealing_.
Referenced by TSiStripMatchedRecHit::clone(), TSiPixelRecHit::clone(), TSiStripRecHit2DLocalPos::clone(), TSiStripRecHit1D::clone(), ProjectedRecHit2D::clone(), and MRHChi2MeasurementEstimator::estimate().
{return annealing_;}
GlobalPoint TransientTrackingRecHit::globalPosition | ( | ) | const [virtual] |
Reimplemented in BeamSpotTransientTrackingRecHit.
Definition at line 12 of file TransientTrackingRecHit.cc.
References globalPosition_, hasGlobalPosition_, TrackingRecHit::localPosition(), surface(), and Surface::toGlobal().
Referenced by CSCPairResidualsConstraint::calculatePhi(), ConversionBarrelEstimator::estimate(), cms::HICSeedMeasurementEstimator::estimate(), EtaPhiMeasurementEstimator::estimate(), EtaPhiEstimator::estimate(), ConversionForwardEstimator::estimate(), KFTrajectoryFitter::fit(), OuterHitCompatibility::operator()(), TrackingRecHitProjector< ResultingHit >::project(), and setPositionErrors().
{ if(! hasGlobalPosition_){ globalPosition_ = surface()->toGlobal(localPosition()); hasGlobalPosition_ = true; return globalPosition_; }else{ return globalPosition_; } }
GlobalError TransientTrackingRecHit::globalPositionError | ( | ) | const [virtual] |
Reimplemented in BeamSpotTransientTrackingRecHit.
Definition at line 22 of file TransientTrackingRecHit.cc.
References globalError_, hasGlobalError_, and setPositionErrors().
{ if(! hasGlobalError_){ setPositionErrors(); return globalError_; }else{ return globalError_; } }
virtual const TrackingRecHit* TransientTrackingRecHit::hit | ( | ) | const [pure virtual] |
Implemented in BeamSpotTransientTrackingRecHit, GenericProjectedRecHit2D, TRecHit1DMomConstraint, TRecHit2DPosConstraint, TSiPixelRecHit, TSiStripRecHit1D, TSiStripRecHit2DLocalPos, TSiTrackerMultiRecHit, GenericTransientTrackingRecHit, TransientTrackingRecHitByValue< RecHit >, and TransientTrackingRecHitByValue< InvalidTrackingRecHit >.
Referenced by TrajectoryCleanerBySharedHits::clean(), EqualsBySharesInput::operator()(), HitComparator::operator()(), HIPAlignmentAlgorithm::run(), ClusterShapeTrajectoryFilter::toBeContinued(), and KFUpdator::update().
void TransientTrackingRecHit::setAnnealingFactor | ( | float | annealing | ) | [inline] |
interface needed to set and read back an annealing value that has been applied to the current hit error matrix when using it as a component for a composite rec hit (useful for the DAF)
Definition at line 98 of file TransientTrackingRecHit.h.
References annealing_.
{annealing_ = annealing;}
void TransientTrackingRecHit::setPositionErrors | ( | ) | const [private] |
Definition at line 63 of file TransientTrackingRecHit.cc.
References GlobalErrorBase< T, ErrorWeightType >::czz(), errorR_, errorRPhi_, errorZ_, globalError_, globalPosition(), hasGlobalError_, TrackingRecHit::localPositionError(), PV3DBase< T, PVType, FrameType >::perp(), GlobalErrorBase< T, ErrorWeightType >::phierr(), GlobalErrorBase< T, ErrorWeightType >::rerr(), mathSSE::sqrt(), surface(), and ErrorFrameTransformer::transform().
Referenced by errorGlobalR(), errorGlobalRPhi(), errorGlobalZ(), and globalPositionError().
{ globalError_ = ErrorFrameTransformer().transform( localPositionError(), *surface() ); errorRPhi_ = globalPosition().perp()*sqrt(globalError_.phierr(globalPosition())); errorR_ = sqrt(globalError_.rerr(globalPosition())); errorZ_ = sqrt(globalError_.czz()); hasGlobalError_ = true; }
void TransientTrackingRecHit::setWeight | ( | float | weight | ) | [inline] |
virtual const Surface* TransientTrackingRecHit::surface | ( | ) | const [inline, virtual] |
Reimplemented in BeamSpotTransientTrackingRecHit, TRecHit1DMomConstraint, TRecHit2DPosConstraint, and InvalidTransientRecHit.
Definition at line 59 of file TransientTrackingRecHit.h.
References geom_, and GeomDet::surface().
Referenced by AlignmentMonitorMuonResiduals::event(), KFTrajectoryFitter::fit(), MuonTransientTrackingRecHit::globalDirection(), MuonTransientTrackingRecHit::globalDirectionError(), globalPosition(), MuonTransientTrackingRecHit::parametersError(), and setPositionErrors().
TransientTrackingRecHit::ConstRecHitContainer TransientTrackingRecHit::transientHits | ( | ) | const [virtual] |
Composite interface: returns the component hits, if any.
Reimplemented in MuonTransientTrackingRecHit, ProjectedRecHit2D, TSiStripMatchedRecHit, TSiStripRecHit2DLocalPos, and TSiTrackerMultiRecHit.
Definition at line 71 of file TransientTrackingRecHit.cc.
Referenced by MRHChi2MeasurementEstimator::estimate().
{ // no components by default return ConstRecHitContainer(); }
float TransientTrackingRecHit::weight | ( | ) | const [inline, virtual] |
Reimplemented from TrackingRecHit.
Definition at line 93 of file TransientTrackingRecHit.h.
References weight_.
Referenced by TSiStripRecHit1D::build(), TSiStripRecHit2DLocalPos::build(), ProjectedRecHit2D::build(), TSiPixelRecHit::build(), TSiStripMatchedRecHit::build(), TSiStripMatchedRecHit::buildInPlace(), TSiStripMatchedRecHit::clone(), TSiPixelRecHit::clone(), TSiStripRecHit2DLocalPos::clone(), TSiStripRecHit1D::clone(), ProjectedRecHit2D::clone(), and setWeight().
{return weight_;}
float TransientTrackingRecHit::annealing_ [private] |
Definition at line 111 of file TransientTrackingRecHit.h.
Referenced by getAnnealingFactor(), and setAnnealingFactor().
float TransientTrackingRecHit::errorR_ [mutable, private] |
Definition at line 116 of file TransientTrackingRecHit.h.
Referenced by errorGlobalR(), and setPositionErrors().
float TransientTrackingRecHit::errorRPhi_ [mutable, private] |
Definition at line 116 of file TransientTrackingRecHit.h.
Referenced by errorGlobalRPhi(), and setPositionErrors().
float TransientTrackingRecHit::errorZ_ [mutable, private] |
Definition at line 116 of file TransientTrackingRecHit.h.
Referenced by errorGlobalZ(), and setPositionErrors().
const GeomDet* TransientTrackingRecHit::geom_ [private] |
Definition at line 108 of file TransientTrackingRecHit.h.
GlobalError TransientTrackingRecHit::globalError_ [mutable, private] |
Definition at line 115 of file TransientTrackingRecHit.h.
Referenced by globalPositionError(), and setPositionErrors().
GlobalPoint TransientTrackingRecHit::globalPosition_ [mutable, private] |
Definition at line 114 of file TransientTrackingRecHit.h.
Referenced by globalPosition().
bool TransientTrackingRecHit::hasGlobalError_ [mutable, private] |
Definition at line 118 of file TransientTrackingRecHit.h.
Referenced by errorGlobalR(), errorGlobalRPhi(), errorGlobalZ(), globalPositionError(), and setPositionErrors().
bool TransientTrackingRecHit::hasGlobalPosition_ [mutable, private] |
Definition at line 117 of file TransientTrackingRecHit.h.
Referenced by globalPosition().
float TransientTrackingRecHit::weight_ [private] |
Definition at line 110 of file TransientTrackingRecHit.h.
Referenced by setWeight(), and weight().