7#ifndef PROMPT_VERTEXITERATIVEFITMERGINGTOOL_H
8#define PROMPT_VERTEXITERATIVEFITMERGINGTOOL_H
31#include "GaudiKernel/ITHistSvc.h"
32#include "GaudiKernel/ToolHandle.h"
33#include "GaudiKernel/ServiceHandle.h"
94 const std::string &
type,
95 const IInterface *parent);
108 const EventContext& ctx,
111 std::vector<std::unique_ptr<xAOD::Vertex>> &initVtxs,
112 const std::vector<const xAOD::TrackParticle *> &selectedTracks
118 const EventContext& ctx,
120 std::vector<std::unique_ptr<xAOD::Vertex>> &initVtxs,
131 const EventContext& ctx,
133 std::unique_ptr<xAOD::Vertex> &newMergedVtx,
135 std::vector<TwoTrackVtx>::iterator &currVit,
136 std::vector<TwoTrackVtx> &vtxs2Track,
150 const EventContext& ctx,
154 std::vector<TwoTrackVtx> &others
162 const EventContext& ctx,
164 std::unique_ptr<xAOD::Vertex> & seedVtx,
166 std::vector<TwoTrackVtx> &others
170 const EventContext& ctx,
187 std::vector<TwoTrackVtx> &vtxs
193 const std::vector<xAOD::Vertex*> &passVtxs,
194 const std::vector<const xAOD::TrackParticle *> &selectedTracks
204 const EventContext& ctx,
206 std::vector<const xAOD::TrackParticle *> &selectedTracks,
210 StatusCode
makeHist(TH1 *&
h,
const std::string &key,
int nbin,
double xmin,
double xmax);
216 this,
"VertexFittingTool",
217 "Prompt::VertexFittingTool/VertexFittingTool"
220 this,
"THistSvc",
"THistSvc/THistSvc"
224 "minimum fit probability requirement for a vertex"
227 this,
"minCandOverSeedFitProbRatio", 0.2,
228 "minimum requirement of the fit probability of new merged vertex / fit probability of seed vertex"
231 this,
"maxExtraTracks", 10,
232 "maximum number of tracks without good lepton+track vertex that we will used for further fitting of vertexes without lepton"
236 this,
"outputStream",
""
Header file for AthHistogramAlgorithm.
virtual double pt() const override final
The transverse momentum ( ) of the particle.
double getDistance(const xAOD::Vertex *vtx1, const xAOD::Vertex *vtx2)
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Vertex_v1 Vertex
Define the latest version of the vertex class.
bool operator()(const xAOD::TrackParticle *lhs, const xAOD::TrackParticle *rhs)
const xAOD::Vertex * seed
SortTwoTrackVtxByDistToSeed(const xAOD::Vertex *seed_)
bool operator()(const TwoTrackVtx &lhs, const TwoTrackVtx &rhs)
bool operator()(const TwoTrackVtx &lhs, const TwoTrackVtx &rhs)
const xAOD::TrackParticle * trackId0
const xAOD::TrackParticle * trackId1