Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:31:32

0001 #ifndef MRHChi2MeasurementEstimator_H
0002 #define MRHChi2MeasurementEstimator_H
0003 
0004 #include "TrackingTools/KalmanUpdators/interface/Chi2MeasurementEstimatorBase.h"
0005 
0006 class SiTrackerMultiRecHitUpdator;
0007 
0008 class MRHChi2MeasurementEstimator final : public Chi2MeasurementEstimatorBase {
0009 public:
0010   /** Construct with cuts on chi2 and nSigma.
0011    *  The cut on Chi2 is used to define the acceptance of RecHits.
0012    *  The errors of the trajectory state are multiplied by nSigma 
0013    *  to define acceptance of Plane and maximalLocalDisplacement.
0014    */
0015 
0016   explicit MRHChi2MeasurementEstimator(double maxChi2, double nSigma = 3.)
0017       : Chi2MeasurementEstimatorBase(maxChi2, nSigma) {}
0018 
0019   std::pair<bool, double> estimate(const TrajectoryStateOnSurface& tsos, const TrackingRecHit& aRecHit) const override;
0020   template <unsigned int N>
0021   std::pair<bool, double> estimate(const TrajectoryStateOnSurface& tsos, const TrackingRecHit& aRecHit) const;
0022 
0023   MRHChi2MeasurementEstimator* clone() const override { return new MRHChi2MeasurementEstimator(*this); }
0024 };
0025 
0026 #endif