Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-07-04 23:44:19

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   using Chi2MeasurementEstimatorBase::estimate;
0011   /** Construct with cuts on chi2 and nSigma.
0012    *  The cut on Chi2 is used to define the acceptance of RecHits.
0013    *  The errors of the trajectory state are multiplied by nSigma 
0014    *  to define acceptance of Plane and maximalLocalDisplacement.
0015    */
0016 
0017   explicit MRHChi2MeasurementEstimator(double maxChi2, double nSigma = 3.)
0018       : Chi2MeasurementEstimatorBase(maxChi2, nSigma) {}
0019 
0020   std::pair<bool, double> estimate(const TrajectoryStateOnSurface& tsos, const TrackingRecHit& aRecHit) const override;
0021   template <unsigned int N>
0022   std::pair<bool, double> estimate(const TrajectoryStateOnSurface& tsos, const TrackingRecHit& aRecHit) const;
0023 
0024   MRHChi2MeasurementEstimator* clone() const override { return new MRHChi2MeasurementEstimator(*this); }
0025 };
0026 
0027 #endif