00001 #ifndef GsfVertexWeightCalculator_H 00002 #define GsfVertexWeightCalculator_H 00003 00004 #include "RecoVertex/VertexPrimitives/interface/LinearizedTrackState.h" 00005 #include "DataFormats/GeometrySurface/interface/ReferenceCounted.h" 00006 #include "RecoVertex/VertexPrimitives/interface/VertexState.h" 00007 00014 class GsfVertexWeightCalculator { 00015 00016 public: 00017 00018 typedef ReferenceCountingPointer<LinearizedTrackState<5> > RefCountedLinearizedTrackState; 00019 00026 double calculate(const VertexState & oldVertex, 00027 const RefCountedLinearizedTrackState track, double cov) const; 00028 00029 private: 00030 typedef LinearizedTrackState<5>::AlgebraicVectorN AlgebraicVectorN; 00031 typedef LinearizedTrackState<5>::AlgebraicMatrixN3 AlgebraicMatrixN3; 00032 typedef LinearizedTrackState<5>::AlgebraicMatrixNM AlgebraicMatrixNM; 00033 typedef LinearizedTrackState<5>::AlgebraicSymMatrixNN AlgebraicSymMatrixNN; 00034 00035 }; 00036 00037 #endif