 |
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRACKTOVERTEX_ITRACKTOVERTEX_H
10 #define TRACKTOVERTEX_ITRACKTOVERTEX_H
13 #include "GaudiKernel/IAlgTool.h"
22 class StraightLineSurface;
33 static const InterfaceID IID_ITrackToVertex(
"ITrackToVertex", 1, 0);
53 static const InterfaceID&
interfaceID() {
return IID_ITrackToVertex; };
56 virtual std::unique_ptr<Trk::StraightLineSurface>
GetBeamLine(
62 const EventContext& ctx,
69 const EventContext& ctx,
74 const EventContext& ctx,
80 const EventContext& ctx,
86 const EventContext& ctx,
92 const EventContext& ctx,
99 const EventContext& ctx,
105 #endif // TRACKTOVERTEX_ITRACKTOVERTEX_H
virtual std::unique_ptr< Trk::Perigee > perigeeAtVertex(const EventContext &ctx, const xAOD::TrackParticle &tp) const =0
Interface method for use with TrackParticle and default primary vertex from TrackParticle.
virtual std::unique_ptr< Trk::TrackParameters > trackAtBeamline(const EventContext &ctx, const xAOD::TrackParticle &tp, const InDet::BeamSpotData *) const =0
Interface method for use with TrackParticle and the beamline.
virtual std::unique_ptr< Trk::TrackParameters > trackAtBeamline(const EventContext &ctx, const Trk::TrackParameters &tpars, const Trk::StraightLineSurface *) const =0
Interface method for use with Track and the beamline from the BeamSpotSvc - TrackParameters
static const InterfaceID & interfaceID()
AlgTool interface methods.
virtual std::unique_ptr< Trk::Perigee > perigeeAtVertex(const EventContext &ctx, const Trk::Track &trk, const Amg::Vector3D &gp) const =0
Interface method for use with Track and given vertex position.
virtual std::unique_ptr< Trk::Perigee > perigeeAtVertex(const EventContext &ctx, const xAOD::TrackParticle &tp, const Amg::Vector3D &gp) const =0
Interface method for use with xAOD::Trackparticle and given vertex position.
virtual ~ITrackToVertex()=default
Virtual destructor.
virtual std::unique_ptr< Trk::StraightLineSurface > GetBeamLine(const InDet::BeamSpotData *) const =0
Use this for MT Coding.
Ensure that the ATLAS eigen extensions are properly loaded.
Eigen::Matrix< double, 3, 1 > Vector3D
virtual std::unique_ptr< Trk::Perigee > perigeeAtBeamline(const EventContext &ctx, const Trk::Track &trk, const InDet::BeamSpotData *beamSpotData) const =0
Interface method for use with Track and the beamline.
Class describing a TrackParticle.
virtual std::unique_ptr< Trk::TrackParameters > trackAtBeamline(const EventContext &ctx, const Trk::Track &trk, const Trk::StraightLineSurface *) const =0
Interface method for use with Track and the beamline.