1 #ifndef RecoBTag_GhostTrackVertexFinder_h
2 #define RecoBTag_GhostTrackVertexFinder_h
27 class GhostTrackFitter;
39 double primcut,
double seccut,
43 std::vector<TransientVertex>
47 const std::vector<TransientTrack> &
tracks)
const;
49 std::vector<TransientVertex>
54 const std::vector<TransientTrack> &
tracks)
const;
56 std::vector<TransientVertex>
61 const std::vector<TransientTrack> &
tracks)
const;
63 std::vector<TransientVertex>
69 const std::vector<TransientTrack> &
tracks)
const;
71 std::vector<TransientVertex>
76 const std::vector<TransientTrack> &primaries,
77 const std::vector<TransientTrack> &
tracks)
const;
79 std::vector<TransientVertex>
85 const std::vector<TransientTrack> &primaries,
86 const std::vector<TransientTrack> &
tracks)
const;
88 std::vector<TransientVertex>
91 const std::vector<TransientTrack> &
tracks,
92 const std::vector<float> &
weights = std::vector<float>())
const;
94 std::vector<TransientVertex>
98 const std::vector<TransientTrack> &tracks,
99 const std::vector<float> &
weights = std::vector<float>())
const;
101 std::vector<TransientVertex>
105 const std::vector<TransientTrack> &primaries,
106 const std::vector<TransientTrack> &tracks,
107 const std::vector<float> &
weights = std::vector<float>())
const;
109 std::vector<TransientVertex>
114 std::vector<TransientVertex>
120 std::vector<TransientVertex>
124 const std::vector<TransientTrack> &primaries,
127 std::vector<TransientVertex>
131 std::vector<TransientVertex>
136 std::vector<TransientVertex>
139 const std::vector<TransientTrack> &primaries,
142 std::vector<TransientVertex>
vertices(
146 bool hasBeamSpot =
false,
bool hasPrimaries =
false)
const;
152 const FinderInfo &
info)
const;
156 const FinderInfo &
info,
157 bool isPrimary)
const;
160 const FinderInfo &
info)
const;
163 const FinderInfo &
info)
const;
166 FinderInfo &
info)
const;
173 const FinderInfo &
info,
174 double scale1 = 1.0,
double scale2 = 1.0);
188 #endif // RecoBTag_GhostTrackVertexFinder_h
std::auto_ptr< VertexFitter< 5 > > primVertexFitter_
~GhostTrackVertexFinder()
static double vertexCompat(const CachingVertex< 5 > &vtx1, const CachingVertex< 5 > &vtx2, const FinderInfo &info, double scale1=1.0, double scale2=1.0)
bool reassignTracks(std::vector< CachingVertex< 5 > > &vertices, const FinderInfo &info) const
bool recursiveMerge(std::vector< CachingVertex< 5 > > &vertices, const FinderInfo &info) const
std::auto_ptr< VertexFitter< 5 > > secVertexFitter_
std::vector< TransientVertex > vertices(const reco::Vertex &primaryVertex, const GlobalVector &direction, double coneRadius, const std::vector< TransientTrack > &tracks) const
std::auto_ptr< GhostTrackFitter > ghostTrackFitter_
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::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