1 #ifndef RecoBTag_GhostTrackVertexFinder_h
2 #define RecoBTag_GhostTrackVertexFinder_h
27 class GhostTrackFitter;
40 const std::vector<TransientTrack> &
tracks)
const;
46 const std::vector<TransientTrack> &
tracks)
const;
52 const std::vector<TransientTrack> &
tracks)
const;
59 const std::vector<TransientTrack> &
tracks)
const;
65 const std::vector<TransientTrack> &primaries,
66 const std::vector<TransientTrack> &
tracks)
const;
73 const std::vector<TransientTrack> &primaries,
74 const std::vector<TransientTrack> &
tracks)
const;
78 const std::vector<TransientTrack> &
tracks,
79 const std::vector<float> &
weights = std::vector<float>())
const;
84 const std::vector<TransientTrack> &tracks,
85 const std::vector<float> &
weights = std::vector<float>())
const;
90 const std::vector<TransientTrack> &primaries,
91 const std::vector<TransientTrack> &tracks,
92 const std::vector<float> &
weights = std::vector<float>())
const;
106 const std::vector<TransientTrack> &primaries,
117 const std::vector<TransientTrack> &primaries,
123 bool hasBeamSpot =
false,
124 bool hasPrimaries =
false)
const;
133 const FinderInfo &
info,
147 const FinderInfo &
info,
149 double scale2 = 1.0);
163 #endif // RecoBTag_GhostTrackVertexFinder_h
~GhostTrackVertexFinder()
std::unique_ptr< VertexFitter< 5 > > primVertexFitter_
bool isPrimary(const SimTrack &simTrk, const PSimHit *simHit)
static double vertexCompat(const CachingVertex< 5 > &vtx1, const CachingVertex< 5 > &vtx2, const FinderInfo &info, double scale1=1.0, double scale2=1.0)
auto const & tracks
cannot be loose
bool reassignTracks(std::vector< CachingVertex< 5 > > &vertices, const FinderInfo &info) const
bool recursiveMerge(std::vector< CachingVertex< 5 > > &vertices, const FinderInfo &info) const
std::vector< TransientVertex > vertices(const reco::Vertex &primaryVertex, const GlobalVector &direction, double coneRadius, const std::vector< TransientTrack > &tracks) const
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
CachingVertex< 5 > mergeVertices(const CachingVertex< 5 > &vertex1, const CachingVertex< 5 > &vertex2, const FinderInfo &info, bool isPrimary) const
std::unique_ptr< VertexFitter< 5 > > secVertexFitter_
std::vector< CachingVertex< 5 > > initialVertices(const FinderInfo &info) const
VertexFitter< 5 > & vertexFitter(bool primary) const
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
GhostTrackFitter & ghostTrackFitter() const
void refitGhostTrack(std::vector< CachingVertex< 5 > > &vertices, FinderInfo &info) const
std::unique_ptr< GhostTrackFitter > ghostTrackFitter_