39 maxFraction(params.getParameter<double>(
"maxFraction")),
55 auto recoVertices = std::make_unique<Product>();
56 for(
typename Product::const_iterator
sv = secondaryVertices->begin();
57 sv != secondaryVertices->end(); ++
sv) {
58 recoVertices->push_back(*
sv);
60 for(
typename Product::iterator
sv = recoVertices->begin();
61 sv != recoVertices->end(); ++
sv) {
65 for(
typename Product::iterator sv2 = recoVertices->begin();
66 sv2 != recoVertices->end(); ++sv2) {
81 if(shared) {
sv=recoVertices->erase(
sv)-1; }
reco::Vertex::Point convertPos(const GlobalPoint &p)
T getParameter(std::string const &) const
edm::EDGetTokenT< Product > token_secondaryVertex
TemplatedVertexMerger< reco::VertexCompositePtrCandidate > CandidateVertexMerger
reco::Vertex::Error convertError(const GlobalError &ge)
TemplatedVertexMerger(const edm::ParameterSet ¶ms)
std::vector< VTX > Product
double computeSharedTracks(const reco::Vertex &pv, const std::vector< reco::TrackRef > &svTracks, double minTrackWeight=0.5, float unused=0)
Measurement1D distance(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const override
#define DEFINE_FWK_MODULE(type)
double significance() const
TemplatedVertexMerger< reco::Vertex > VertexMerger
bool trackFilter(const reco::TrackRef &track) const
void produce(edm::Event &event, const edm::EventSetup &es) override