5#ifndef TRKVERTEXFITTERINTERFACES_ITRACKTOVERTEXIPESTIMATOR_H
6#define TRKVERTEXFITTERINTERFACES_ITRACKTOVERTEXIPESTIMATOR_H
8#include "GaudiKernel/IAlgTool.h"
16#include "CLHEP/Vector/ThreeVector.h"
57 virtual std::unique_ptr<ImpactParametersAndSigma>
estimate(
59 bool doRemoval)
const = 0;
61 virtual std::unique_ptr<ImpactParametersAndSigma>
estimate(
63 bool doRemoval)
const = 0;
65 virtual std::unique_ptr<ImpactParametersAndSigma>
estimate(
69 virtual std::unique_ptr<ImpactParametersAndSigma>
estimate(
78 virtual std::unique_ptr<ImpactParametersAndSigma>
estimate(
81 virtual std::unique_ptr<ImpactParametersAndSigma>
estimate(
DeclareInterfaceID(ITrackToVertexIPEstimator, 1, 0)
virtual std::unique_ptr< ImpactParametersAndSigma > estimate(const Trk::TrackParameters *track, const xAOD::Vertex *vtx, bool doRemoval) const =0
virtual std::unique_ptr< ImpactParametersAndSigma > estimate(const xAOD::TrackParticle *track, const xAOD::Vertex *vtx, bool doRemoval) const =0
Estimate methods returning a d0 and its calculated sigma.
virtual std::unique_ptr< ImpactParametersAndSigma > estimate(const xAOD::TrackParticle *track, const xAOD::Vertex *vtx) const =0
virtual double getZLifetimeSignOfTrack(const Trk::TrackParameters &track, const Amg::Vector3D &jetMomentum, const xAOD::Vertex &primaryVertex) const =0
virtual double get3DLifetimeSignOfTrack(const Trk::TrackParameters &track, const CLHEP::Hep3Vector &jetMomentum, const xAOD::Vertex &primaryVertex) const =0
virtual std::unique_ptr< ImpactParametersAndSigma > estimate(const Trk::TrackParameters *track, const Trk::TrackParameters *newtrack, const xAOD::Vertex *vtx, bool doRemoval) const =0
virtual ~ITrackToVertexIPEstimator()
virtual double get2DLifetimeSignOfTrack(const Trk::TrackParameters &track, const CLHEP::Hep3Vector &jetMomentum, const xAOD::Vertex &primaryVertex) const =0
virtual double getZLifetimeSignOfTrack(const Trk::TrackParameters &track, const CLHEP::Hep3Vector &jetMomentum, const xAOD::Vertex &primaryVertex) const =0
virtual std::unique_ptr< ImpactParametersAndSigma > estimate(const Trk::TrackParameters *track, const xAOD::Vertex *vtx) const =0
virtual xAOD::Vertex * getUnbiasedVertex(const xAOD::TrackParticle *track, const xAOD::Vertex *vtx) const =0
virtual double get2DLifetimeSignOfTrack(const Trk::TrackParameters &track, const Amg::Vector3D &jetMomentum, const xAOD::Vertex &primaryVertex) const =0
virtual xAOD::Vertex * getUnbiasedVertex(const Trk::TrackParameters *track, const xAOD::Vertex *vtx) const =0
virtual double get3DLifetimeSignOfTrack(const Trk::TrackParameters &track, const Amg::Vector3D &jetMomentum, const xAOD::Vertex &primaryVertex) const =0
virtual std::unique_ptr< ImpactParametersAndSigma > estimate(const xAOD::TrackParticle *track, const xAOD::TrackParticle *newtrack, const xAOD::Vertex *vtx, bool doRemoval) const =0
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< TrackParametersDim, Charged > TrackParameters
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Vertex_v1 Vertex
Define the latest version of the vertex class.