9#ifndef TRKVERTEXFITTERINTERFACE_IVERTEXUPDATOR_H
10#define TRKVERTEXFITTERINTERFACE_IVERTEXUPDATOR_H
12#include "GaudiKernel/IAlgTool.h"
An abstract base class for the vertex updators.
virtual float vertexPositionChi2(const xAOD::Vertex &old_vtx, const positionUpdateOutcome &new_vtx) const =0
virtual xAOD::Vertex * remove(xAOD::Vertex &, VxTrackAtVertex &) const =0
Remove method: removes one track from a vertex.
static const InterfaceID & interfaceID()
AlgTool interface methods.
virtual ~IVertexUpdator()
Virtual destructor.
virtual float trackParametersChi2(const positionUpdateOutcome &new_vtx, const LinearizedTrack *trk) const =0
virtual xAOD::Vertex * add(xAOD::Vertex &, VxTrackAtVertex &) const =0
Add method: adds one track to a vertex.
virtual float trackParametersChi2(const xAOD::Vertex &new_vtx, const LinearizedTrack *trk) const =0
Method calculating the interstep Chi2 increment.
virtual float vertexPositionChi2(const xAOD::Vertex &old_vtx, const xAOD::Vertex &new_vtx) const =0
Method calculating the vertex displacement-related part of the chi2 Can also be called using the ou...
virtual positionUpdateOutcome positionUpdate(const xAOD::Vertex &vtx, const LinearizedTrack *trk, double trackWeight, updateMode mode) const =0
Position update method.
The VxTrackAtVertex is a common class for all present TrkVertexFitters The VxTrackAtVertex is designe...
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID IID_IVertexUpdator("IVertexUpdator", 1, 0)
Vertex_v1 Vertex
Define the latest version of the vertex class.
AmgSymMatrix(3) covariancePosition