#include <TrackingTools/KalmanUpdators/interface/Chi2SwitchingEstimator.h>
Public Member Functions | |
Chi2SwitchingEstimator (double aMaxChi2, double nSigma=3.) | |
virtual Chi2SwitchingEstimator * | clone () const |
virtual std::pair< bool, double > | estimate (const TrajectoryStateOnSurface &aTsos, const TransientTrackingRecHit &aHit) const |
implementation of MeasurementEstimator::estimate | |
Private Member Functions | |
const Chi2MeasurementEstimator & | localEstimator () const |
estimator for 2D hits (matched or pixel) | |
const Chi2StripEstimator & | stripEstimator () const |
estimator for 1D hits (non-matched strips) | |
Private Attributes | |
DeepCopyPointerByClone< const Chi2MeasurementEstimator > | theLocalEstimator |
DeepCopyPointerByClone< const Chi2StripEstimator > | theStripEstimator |
Ported from ORCA.
Definition at line 19 of file Chi2SwitchingEstimator.h.
Chi2SwitchingEstimator::Chi2SwitchingEstimator | ( | double | aMaxChi2, | |
double | nSigma = 3. | |||
) | [inline, explicit] |
Definition at line 23 of file Chi2SwitchingEstimator.h.
Referenced by clone().
00023 : 00024 Chi2MeasurementEstimatorBase(aMaxChi2,nSigma), 00025 theLocalEstimator(new Chi2MeasurementEstimator(aMaxChi2,nSigma)), 00026 theStripEstimator(new Chi2StripEstimator(aMaxChi2,nSigma)) {}
virtual Chi2SwitchingEstimator* Chi2SwitchingEstimator::clone | ( | void | ) | const [inline, virtual] |
Implements MeasurementEstimator.
Definition at line 32 of file Chi2SwitchingEstimator.h.
References Chi2SwitchingEstimator().
00033 { 00034 return new Chi2SwitchingEstimator(*this); 00035 }
std::pair< bool, double > Chi2SwitchingEstimator::estimate | ( | const TrajectoryStateOnSurface & | aTsos, | |
const TransientTrackingRecHit & | aHit | |||
) | const [virtual] |
implementation of MeasurementEstimator::estimate
Implements Chi2MeasurementEstimatorBase.
Definition at line 6 of file Chi2SwitchingEstimator.cc.
References TransientTrackingRecHit::detUnit(), Chi2MeasurementEstimator::estimate(), Chi2StripEstimator::estimate(), GeomDetType::isTrackerPixel(), localEstimator(), stripEstimator(), and GeomDetUnit::type().
00007 { 00008 if(//aHit.isMatched() || 00009 aHit.detUnit()->type().isTrackerPixel()) { 00010 return localEstimator().estimate(aTsos, aHit); 00011 } else { 00012 return stripEstimator().estimate(aTsos, aHit); 00013 } 00014 }
const Chi2MeasurementEstimator& Chi2SwitchingEstimator::localEstimator | ( | ) | const [inline, private] |
estimator for 2D hits (matched or pixel)
Definition at line 39 of file Chi2SwitchingEstimator.h.
References theLocalEstimator.
Referenced by estimate().
00039 { 00040 return *theLocalEstimator; 00041 }
const Chi2StripEstimator& Chi2SwitchingEstimator::stripEstimator | ( | ) | const [inline, private] |
estimator for 1D hits (non-matched strips)
Definition at line 43 of file Chi2SwitchingEstimator.h.
References theStripEstimator.
Referenced by estimate().
00043 { 00044 return *theStripEstimator; 00045 }