Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:29:09

0001 #ifndef KalmanSmoothedVertexChi2Estimator_H
0002 #define KalmanSmoothedVertexChi2Estimator_H
0003 
0004 #include "RecoVertex/VertexPrimitives/interface/VertexSmoothedChiSquaredEstimator.h"
0005 #include "RecoVertex/VertexPrimitives/interface/CachingVertex.h"
0006 #include "RecoVertex/KalmanVertexFit/interface/KVFHelper.h"
0007 
0008 /**
0009    * Class to calculate the smoothed chi**2 of the vertex using the Kalman 
0010    *  filter algorithms after the vertex has been fit and the tracks refit.
0011    */
0012 
0013 template <unsigned int N>
0014 class KalmanSmoothedVertexChi2Estimator : public VertexSmoothedChiSquaredEstimator<N> {
0015 public:
0016   typedef typename std::pair<bool, double> BDpair;
0017 
0018   ~KalmanSmoothedVertexChi2Estimator() override {}
0019 
0020   /**
0021    *  Methode which calculates the smoothed vertex chi**2.
0022    *  \param vertex is the final estimate of the vertex, with the refited tracks
0023    *  \return the smoothed vertex chi**2
0024    */
0025   BDpair estimate(const CachingVertex<N>& vertex) const override;
0026 
0027   KalmanSmoothedVertexChi2Estimator* clone() const override { return new KalmanSmoothedVertexChi2Estimator(*this); }
0028 
0029 private:
0030   KVFHelper<N> helper;
0031 };
0032 
0033 #endif