CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
Chi2SwitchingEstimator Class Reference

#include <Chi2SwitchingEstimator.h>

Inheritance diagram for Chi2SwitchingEstimator:
Chi2MeasurementEstimatorBase MeasurementEstimator

Public Member Functions

 Chi2SwitchingEstimator (double aMaxChi2, double nSigma=3.)
 
virtual Chi2SwitchingEstimatorclone () const
 
virtual std::pair< bool, double > estimate (const TrajectoryStateOnSurface &aTsos, const TransientTrackingRecHit &aHit) const
 implementation of MeasurementEstimator::estimate More...
 
- Public Member Functions inherited from Chi2MeasurementEstimatorBase
 Chi2MeasurementEstimatorBase (double maxChi2, double nSigma=3.)
 
double chiSquaredCut () const
 
virtual bool estimate (const TrajectoryStateOnSurface &ts, const BoundPlane &plane) const
 
virtual Local2DVector maximalLocalDisplacement (const TrajectoryStateOnSurface &ts, const BoundPlane &plane) const
 
double nSigmaCut () const
 
- Public Member Functions inherited from MeasurementEstimator
virtual ~MeasurementEstimator ()
 

Private Member Functions

const Chi2MeasurementEstimatorlocalEstimator () const
 estimator for 2D hits (matched or pixel) More...
 
const Chi2StripEstimatorstripEstimator () const
 estimator for 1D hits (non-matched strips) More...
 

Private Attributes

DeepCopyPointerByClone< const
Chi2MeasurementEstimator
theLocalEstimator
 
DeepCopyPointerByClone< const
Chi2StripEstimator
theStripEstimator
 

Additional Inherited Members

- Public Types inherited from MeasurementEstimator
typedef std::pair< bool, double > HitReturnType
 
typedef Vector2DBase< float,
LocalTag
Local2DVector
 
typedef bool SurfaceReturnType
 
- Protected Member Functions inherited from Chi2MeasurementEstimatorBase
std::pair< bool, double > returnIt (double est) const
 

Detailed Description

A measurement estimator that uses Chi2MeasurementEstimator for pixel and matched strip hits, and Chi2StripEstimator for simple strip hits. Ported from ORCA.

Date:
2007/05/09 13:50:25
Revision:
1.4
Author
todorov, cerati

Definition at line 19 of file Chi2SwitchingEstimator.h.

Constructor & Destructor Documentation

Chi2SwitchingEstimator::Chi2SwitchingEstimator ( double  aMaxChi2,
double  nSigma = 3. 
)
inlineexplicit

Definition at line 23 of file Chi2SwitchingEstimator.h.

Referenced by clone().

23  :
24  Chi2MeasurementEstimatorBase(aMaxChi2,nSigma),
25  theLocalEstimator(new Chi2MeasurementEstimator(aMaxChi2,nSigma)),
26  theStripEstimator(new Chi2StripEstimator(aMaxChi2,nSigma)) {}
DeepCopyPointerByClone< const Chi2StripEstimator > theStripEstimator
Chi2MeasurementEstimatorBase(double maxChi2, double nSigma=3.)
DeepCopyPointerByClone< const Chi2MeasurementEstimator > theLocalEstimator

Member Function Documentation

virtual Chi2SwitchingEstimator* Chi2SwitchingEstimator::clone ( void  ) const
inlinevirtual

Implements MeasurementEstimator.

Definition at line 32 of file Chi2SwitchingEstimator.h.

References Chi2SwitchingEstimator().

33  {
34  return new Chi2SwitchingEstimator(*this);
35  }
Chi2SwitchingEstimator(double aMaxChi2, double nSigma=3.)
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(), Chi2StripEstimator::estimate(), Chi2MeasurementEstimator::estimate(), GeomDetType::isTrackerPixel(), localEstimator(), stripEstimator(), and GeomDetUnit::type().

7  {
8  if(//aHit.isMatched() ||
9  aHit.detUnit()->type().isTrackerPixel()) {
10  return localEstimator().estimate(aTsos, aHit);
11  } else {
12  return stripEstimator().estimate(aTsos, aHit);
13  }
14 }
const Chi2StripEstimator & stripEstimator() const
estimator for 1D hits (non-matched strips)
const Chi2MeasurementEstimator & localEstimator() const
estimator for 2D hits (matched or pixel)
virtual const GeomDetType & type() const =0
bool isTrackerPixel() const
Definition: GeomDetType.cc:30
virtual std::pair< bool, double > estimate(const TrajectoryStateOnSurface &, const TransientTrackingRecHit &) const
virtual std::pair< bool, double > estimate(const TrajectoryStateOnSurface &, const TransientTrackingRecHit &) const
virtual const GeomDetUnit * detUnit() const
const Chi2MeasurementEstimator& Chi2SwitchingEstimator::localEstimator ( ) const
inlineprivate

estimator for 2D hits (matched or pixel)

Definition at line 39 of file Chi2SwitchingEstimator.h.

References theLocalEstimator.

Referenced by estimate().

39  {
40  return *theLocalEstimator;
41  }
DeepCopyPointerByClone< const Chi2MeasurementEstimator > theLocalEstimator
const Chi2StripEstimator& Chi2SwitchingEstimator::stripEstimator ( ) const
inlineprivate

estimator for 1D hits (non-matched strips)

Definition at line 43 of file Chi2SwitchingEstimator.h.

References theStripEstimator.

Referenced by estimate().

43  {
44  return *theStripEstimator;
45  }
DeepCopyPointerByClone< const Chi2StripEstimator > theStripEstimator

Member Data Documentation

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().