7#ifndef TRKVKALVRTFITTER_IVERTEXCASCADEFITTER_H
8#define TRKVKALVRTFITTER_IVERTEXCASCADEFITTER_H
39 virtual std::unique_ptr<IVKalState>
makeState(
const EventContext& ctx)
const = 0;
44 virtual std::unique_ptr<IVKalState>
makeState()
const
46 return makeState(Gaudi::Hive::currentContext());
50 std::span<const double> particleMass,
52 double massConstraint = 0.)
const = 0;
55 std::span<const double> particleMass,
57 double massConstraint = 0.)
const = 0;
60 std::span<const double> particleMass,
61 const std::vector<VertexID> &precedingVertices,
63 double massConstraint = 0.)
const = 0;
66 const Vertex * primVertex = 0,
bool FirstDecayAtPV =
false )
const = 0;
69 const std::vector<const xAOD::TrackParticle*> & tracksInConstraint,
70 const std::vector<VertexID> &verticesInConstraint,
72 double massConstraint )
const = 0;
virtual std::unique_ptr< IVKalState > makeState(const EventContext &ctx) const =0
virtual VertexID nextVertex(const std::vector< const xAOD::TrackParticle * > &list, std::span< const double > particleMass, IVKalState &istate, double massConstraint=0.) const =0
virtual VertexID nextVertex(const std::vector< const xAOD::TrackParticle * > &list, std::span< const double > particleMass, const std::vector< VertexID > &precedingVertices, IVKalState &istate, double massConstraint=0.) const =0
static const InterfaceID & interfaceID()
virtual std::unique_ptr< IVKalState > makeState() const
virtual VxCascadeInfo * fitCascade(IVKalState &istate, const Vertex *primVertex=0, bool FirstDecayAtPV=false) const =0
virtual VertexID startVertex(const std::vector< const xAOD::TrackParticle * > &list, std::span< const double > particleMass, IVKalState &istate, double massConstraint=0.) const =0
virtual StatusCode addMassConstraint(VertexID Vertex, const std::vector< const xAOD::TrackParticle * > &tracksInConstraint, const std::vector< VertexID > &verticesInConstraint, IVKalState &istate, double massConstraint) const =0
This class is a simplest representation of a vertex candidate.
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID IID_IVertexCascadeFitter("IVertexCascadeFitter", 1, 0)