Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef CommonDet_EtaPhiMeasurementEstimator_H
0002 #define CommonDet_EtaPhiMeasurementEstimator_H
0003 
0004 /** \class EtaPhiMeasurementEstimator
0005  *  A EtaPhi Measurement Estimator. 
0006  *  Computhes the Chi^2 of a TrajectoryState with a RecHit or a 
0007  *  Plane. The TrajectoryState must have errors.
0008  *  Works for any RecHit dimension. Ported from ORCA.
0009  *
0010  *  tschudi
0011  */
0012 
0013 #include "TrackingTools/DetLayers/interface/MeasurementEstimator.h"
0014 
0015 class EtaPhiMeasurementEstimator final : public MeasurementEstimator {
0016 public:
0017   explicit EtaPhiMeasurementEstimator(float dEta, float dPhi) : thedEta(dEta), thedPhi(dPhi) {}
0018   ~EtaPhiMeasurementEstimator() override {}
0019 
0020   std::pair<bool, double> estimate(const TrajectoryStateOnSurface&, const TrackingRecHit&) const override;
0021 
0022   bool estimate(const TrajectoryStateOnSurface& tsos, const Plane& plane) const override;
0023 
0024   Local2DVector maximalLocalDisplacement(const TrajectoryStateOnSurface& tsos, const Plane& plane) const override;
0025 
0026   EtaPhiMeasurementEstimator* clone() const override { return new EtaPhiMeasurementEstimator(*this); }
0027 
0028 private:
0029   float thedEta;
0030   float thedPhi;
0031 };
0032 
0033 #endif