1 #ifndef TauTagTools_PFCandCommonVertexFitter_h
2 #define TauTagTools_PFCandCommonVertexFitter_h
21 namespace reco {
class VertexCompositeCandidate; }
33 void fill(std::vector<reco::TransientTrack> &,
34 std::vector<reco::Candidate *> &,
35 std::vector<reco::RecoCandidate::TrackType> &,
38 const std::vector<reco::TransientTrack> &)
const = 0;
49 template<
typename Fitter>
58 const std::vector<reco::TransientTrack> &
tracks)
const {
60 vertex =
fitter_.vertex(tracks);
62 std::cerr <<
">>> exception thrown by KalmanVertexFitter:\n"
64 <<
">>> candidate not fitted to common vertex" << std::endl;
virtual ~PFCandCommonVertexFitterBase()
math::Error< dimension >::type CovarianceMatrix
covariance error matrix (3x3)
virtual bool fit(TransientVertex &, const std::vector< reco::TransientTrack > &) const =0
PFCandCommonVertexFitterBase(const edm::ParameterSet &)
double ndof_
number of degrees of freedom
CovarianceMatrix cov_
covariance matrix (3x3)
void fill(std::vector< reco::TransientTrack > &, std::vector< reco::Candidate * > &, std::vector< reco::RecoCandidate::TrackType > &, reco::Candidate &) const
PFCandCommonVertexFitter(const edm::ParameterSet &cfg)
void set(const MagneticField *bField)
bool fit(TransientVertex &vertex, const std::vector< reco::TransientTrack > &tracks) const
reco::Vertex::CovarianceMatrix CovarianceMatrix
const MagneticField * bField_