9#ifndef TRKVERTEXFITTERINTERFACE_IVERTEXFITTER_H
10#define TRKVERTEXFITTERINTERFACE_IVERTEXFITTER_H
12#include "GaudiKernel/IAlgTool.h"
70 virtual std::unique_ptr<xAOD::Vertex>
fit(
71 const EventContext& ctx,
72 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
80 virtual std::unique_ptr<xAOD::Vertex>
fit(
81 const EventContext& ctx,
82 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
83 const std::vector<const xAOD::NeutralParticle*>& vectorNeu,
92 virtual std::unique_ptr<xAOD::Vertex>
fit(
93 const EventContext& ctx,
94 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
95 const std::vector<const xAOD::NeutralParticle*>& vectorNeu,
104 virtual std::unique_ptr<xAOD::Vertex>
fit(
105 const EventContext& ctx,
106 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
114 virtual std::unique_ptr<xAOD::Vertex>
fit(
115 const EventContext& ctx,
116 const std::vector<const Trk::TrackParameters*>& perigeeList,
117 const std::vector<const Trk::NeutralParameters*>& neutralPerigeeList,
125 virtual std::unique_ptr<xAOD::Vertex>
fit(
126 const EventContext& ctx,
127 const std::vector<const Trk::TrackParameters*>& perigeeList,
136 virtual std::unique_ptr<xAOD::Vertex>
fit(
137 const EventContext& ctx,
138 const std::vector<const Trk::TrackParameters*>& perigeeList,
139 const std::vector<const Trk::NeutralParameters*>& neutralPerigeeList,
148 virtual std::unique_ptr<xAOD::Vertex>
fit(
149 const EventContext& ctx,
150 const std::vector<const Trk::TrackParameters*>& perigeeList,
159 virtual std::unique_ptr<xAOD::Vertex>
fit(
160 const EventContext& ctx,
161 const std::vector<const Trk::TrackParameters*>& perigeeList,
162 const std::vector<const Trk::NeutralParameters*>& neutralPerigeeList)
const = 0;
170 virtual std::unique_ptr<xAOD::Vertex>
fit(
171 const EventContext& ctx,
172 const std::vector<const Trk::TrackParameters*>& perigeeList)
const = 0;
Interface class for vertex fitting AlgTools, for more detailed information, take a look at the header...
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeu, const Amg::Vector3D &startingPoint) const =0
Interface for xAOD::TrackParticle and xAOD::NeutralParticle with starting point.
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const xAOD::Vertex &constraint) const =0
Interface for TrackParameters and NeutralParameters with vertex constraint the position of the constr...
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const Amg::Vector3D &startingPoint) const =0
Interface for xAOD::TrackParticle with starting point Event Context aware interface.
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList) const =0
Fit method using the VertexSeedFinder to estimate initial position of the vertex and taking it as a f...
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const Amg::Vector3D &startingPoint) const =0
Interface for TrackParameters with starting point Event Context aware method.
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const xAOD::Vertex &constraint) const =0
Interface for xAOD::TrackParticle with vertex constraint the position of the constraint is ALWAYS the...
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeu, const xAOD::Vertex &constraint) const =0
Interface for xAOD::TrackParticle and xAOD::NeutralParticle with vertex constraint the position of th...
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex &constraint) const =0
Interface for TrackParameters with vertex constraint the position of the constraint is ALWAYS the sta...
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList) const =0
Fit method using the VertexSeedFinder to estimate initial position of the vertex and taking it as a f...
virtual ~IVertexFitter()=default
Virtual destructor.
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const Amg::Vector3D &startingPoint) const =0
Interface for TrackParameters and NeutralParameters with starting point Event Context aware method.
DeclareInterfaceID(IVertexFitter, 1, 0)
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
Vertex_v1 Vertex
Define the latest version of the vertex class.