5#ifndef TRKVERTEXFITTERBILLOIR_FULLVERTEXFITTER_H
6#define TRKVERTEXFITTERBILLOIR_FULLVERTEXFITTER_H
8#include "GaudiKernel/ToolHandle.h"
62 virtual std::unique_ptr<xAOD::Vertex>
fit(
63 const EventContext& ctx,
64 const std::vector<const Trk::TrackParameters*>& perigeeList,
69 virtual std::unique_ptr<xAOD::Vertex>
fit(
70 const EventContext& ctx,
71 const std::vector<const TrackParameters*>& perigeeList,
72 const std::vector<const Trk::NeutralParameters*>& ,
76 <<
"FullVertexFitter::fit(fit(const std::vector<const "
77 "TrackParameters*>&,const std::vector<const "
78 "Trk::NeutralParameters*>&,const Amg::Vector3D&) ignoring neutrals"
80 return fit(ctx, perigeeList, startingPoint);
85 virtual std::unique_ptr<xAOD::Vertex>
fit(
86 const EventContext& ctx,
87 const std::vector<const Trk::TrackParameters*>& perigeeList,
92 virtual std::unique_ptr<xAOD::Vertex>
fit(
93 const EventContext& ctx,
94 const std::vector<const TrackParameters*>& perigeeList,
95 const std::vector<const Trk::NeutralParameters*>& ,
99 <<
"FullVertexFitter::fit(fit(const std::vector<const "
100 "TrackParameters*>&,const std::vector<const "
101 "Trk::NeutralParameters*>&,const xAOD::Vertex&) ignoring neutrals"
103 return fit(ctx, perigeeList, constraint);
110 virtual std::unique_ptr<xAOD::Vertex>
fit(
111 const EventContext& ctx,
112 const std::vector<const Trk::TrackParameters*>&
113 perigeeList)
const override;
115 virtual std::unique_ptr<xAOD::Vertex>
fit(
116 const EventContext& ctx,
117 const std::vector<const TrackParameters*>& perigeeList,
118 const std::vector<const Trk::NeutralParameters*>& )
121 msg(MSG::WARNING) <<
"FullVertexFitter::fit(fit(const std::vector<const "
122 "TrackParameters*>&,const std::vector<const "
123 "Trk::NeutralParameters*>&) ignoring neutrals"
125 return fit(ctx, perigeeList);
129 virtual std::unique_ptr<xAOD::Vertex>
fit(
130 const EventContext& ctx,
131 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
136 virtual std::unique_ptr<xAOD::Vertex>
fit(
137 const EventContext& ctx,
138 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
139 const std::vector<const xAOD::NeutralParticle*>& ,
143 <<
"FullVertexFitter::fit(fit(const std::vector<const "
144 "TrackParticle*>&,const std::vector<const "
145 "Trk::NeutralParticle*>&,const Amg::Vector3D&) ignoring neutrals"
147 return fit(ctx, vectorTrk, startingPoint);
152 virtual std::unique_ptr<xAOD::Vertex>
fit(
153 const EventContext& ctx,
154 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
160 virtual std::unique_ptr<xAOD::Vertex>
fit(
161 const EventContext& ctx,
162 const std::vector<const xAOD::TrackParticle*>& vectorTrk,
163 const std::vector<const xAOD::NeutralParticle*>& ,
167 <<
"FullVertexFitter::fit(fit(const std::vector<const "
168 "TrackParticle*>&,const std::vector<const "
169 "Trk::NeutralParticle*>&,const xAOD::Vertex&) ignoring neutrals"
171 return fit(ctx, vectorTrk, constraint);
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &, const xAOD::Vertex &constraint) const override
ToolHandle< Trk::IVertexLinearizedTrackFactory > m_linFactory
Data members to store the results.
virtual ~FullVertexFitter()
standard destructor
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const Amg::Vector3D &startingPoint) const override
Interface for ParametersBase with starting point.
virtual StatusCode initialize() override
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &) const override
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &, const xAOD::Vertex &constraint) const override
Interface for TrackParameters and NeutralParameters with RecVertex starting point.
unsigned int m_maxIterations
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &, const Amg::Vector3D &startingPoint) const override
*Interface for xAOD::TrackParticle and NeutralParticle with starting point
FullVertexFitter(const std::string &t, const std::string &n, const IInterface *p)
virtual std::unique_ptr< xAOD::Vertex > fit(const EventContext &ctx, const std::vector< const TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &, const Amg::Vector3D &startingPoint) const override
Interface for TrackParameters and NeutralParameters with starting point.
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.
An Abstract Base Class for the LinearizedTrackFactories.
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.