1 #ifndef RecoCandUtils_CandCommonVertexFitter_h
2 #define RecoCandUtils_CandCommonVertexFitter_h
15 namespace reco {
class VertexCompositeCandidate; }
27 void fill(std::vector<reco::TransientTrack> &,
28 std::vector<reco::Candidate *> &,
29 std::vector<reco::RecoCandidate::TrackType> &,
32 const std::vector<reco::TransientTrack> &)
const = 0;
43 template<
typename Fitter>
51 const std::vector<reco::TransientTrack> &
tracks)
const {
53 vertex =
fitter_.vertex(tracks);
55 std::cerr <<
">>> exception thrown by KalmanVertexFitter:\n"
57 <<
">>> candidate not fitted to common vertex" << std::endl;
const MagneticField * bField_
virtual ~CandCommonVertexFitterBase()
CandCommonVertexFitter(const edm::ParameterSet &cfg)
S make(const edm::ParameterSet &cfg)
reco::Vertex::CovarianceMatrix CovarianceMatrix
math::Error< dimension >::type CovarianceMatrix
covariance error matrix (3x3)
CovarianceMatrix cov_
covariance matrix (3x3)
bool fit(TransientVertex &vertex, const std::vector< reco::TransientTrack > &tracks) const
void fill(std::vector< reco::TransientTrack > &, std::vector< reco::Candidate * > &, std::vector< reco::RecoCandidate::TrackType > &, reco::Candidate &) const
void set(const MagneticField *bField)
double ndof_
number of degrees of freedom
CandCommonVertexFitterBase(const edm::ParameterSet &)
virtual bool fit(TransientVertex &, const std::vector< reco::TransientTrack > &) const =0