#include <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 |
A measurement estimator that uses Chi2MeasurementEstimator for pixel and matched strip hits, and Chi2StripEstimator for simple strip hits. 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().
: Chi2MeasurementEstimatorBase(aMaxChi2,nSigma), theLocalEstimator(new Chi2MeasurementEstimator(aMaxChi2,nSigma)), 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().
{ return new Chi2SwitchingEstimator(*this); }
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().
{ if(//aHit.isMatched() || aHit.detUnit()->type().isTrackerPixel()) { return localEstimator().estimate(aTsos, aHit); } else { return stripEstimator().estimate(aTsos, aHit); } }
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().
{ return *theLocalEstimator; }
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().
{ return *theStripEstimator; }
DeepCopyPointerByClone<const Chi2MeasurementEstimator> Chi2SwitchingEstimator::theLocalEstimator [private] |
Definition at line 48 of file Chi2SwitchingEstimator.h.
Referenced by localEstimator().
DeepCopyPointerByClone<const Chi2StripEstimator> Chi2SwitchingEstimator::theStripEstimator [private] |
Definition at line 49 of file Chi2SwitchingEstimator.h.
Referenced by stripEstimator().