ATLAS Offline Software
Public Types | Public Member Functions | List of all members
ActsTrk::IExtrapolationTool Class Referenceabstract

Tool to extrapolate bound track parameters. More...

#include <IExtrapolationTool.h>

Inheritance diagram for ActsTrk::IExtrapolationTool:
Collaboration diagram for ActsTrk::IExtrapolationTool:

Public Types

using RecordedMaterial = Acts::MaterialInteractor::result_type
 Abrivation of the recorded material
More...
 
using PropagationOutput = std::pair< std::vector< Acts::detail::Step >, RecordedMaterial >
 Abrivation of the recorded steps and the allocated material. More...
 

Public Member Functions

 DeclareInterfaceID (ActsTrk::IExtrapolationTool, 1, 0)
 
virtual PropagationOutput propagationSteps (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, Acts::Direction navDir=Acts::Direction::Forward(), double pathLimit=std::numeric_limits< double >::max()) const =0
 Extrapolate the track parameters until the end of the world and record the performed steps & the allocated material. More...
 
virtual PropagationOutput propagationSteps (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::Surface &target, Acts::Direction navDir=Acts::Direction::Forward(), double pathLimit=std::numeric_limits< double >::max()) const =0
 Extrapolate the track parameters from a start to a target surface and record the peformed steps & allocated parameters. More...
 
virtual std::optional< Acts::BoundTrackParameters > propagate (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::Surface &target, Acts::Direction navDir=Acts::Direction::Forward(), double pathLimit=std::numeric_limits< double >::max()) const =0
 Extrapolates the track parameters from a start to a target surface and returns the extrapolated track parameters on that surface. More...
 
virtual std::optional< Acts::BoundTrackParameters > propagate (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, Acts::Direction navDir=Acts::Direction::Forward(), double pathLimit=std::numeric_limits< double >::max()) const =0
 
virtual Acts::MagneticFieldContext getMagneticFieldContext (const EventContext &ctx) const =0
 Retrieves the magnetic field conditions from the Conditions store & wraps them into a Magnetic field context. More...
 

Detailed Description

Tool to extrapolate bound track parameters.


Definition at line 24 of file IExtrapolationTool.h.

Member Typedef Documentation

◆ PropagationOutput

using ActsTrk::IExtrapolationTool::PropagationOutput = std::pair<std::vector<Acts::detail::Step>, RecordedMaterial>

Abrivation of the recorded steps and the allocated material.

Definition at line 30 of file IExtrapolationTool.h.

◆ RecordedMaterial

using ActsTrk::IExtrapolationTool::RecordedMaterial = Acts::MaterialInteractor::result_type

Abrivation of the recorded material

Definition at line 28 of file IExtrapolationTool.h.

Member Function Documentation

◆ DeclareInterfaceID()

ActsTrk::IExtrapolationTool::DeclareInterfaceID ( ActsTrk::IExtrapolationTool  ,
,
 
)

◆ getMagneticFieldContext()

virtual Acts::MagneticFieldContext ActsTrk::IExtrapolationTool::getMagneticFieldContext ( const EventContext &  ctx) const
pure virtual

Retrieves the magnetic field conditions from the Conditions store & wraps them into a Magnetic field context.

Parameters
ctxEvent context to fastly access the Conditions store

◆ propagate() [1/2]

virtual std::optional<Acts::BoundTrackParameters> ActsTrk::IExtrapolationTool::propagate ( const EventContext &  ctx,
const Acts::BoundTrackParameters &  startParameters,
Acts::Direction  navDir = Acts::Direction::Forward(),
double  pathLimit = std::numeric_limits< double >::max() 
) const
pure virtual
Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and no surface is not yet reached.

◆ propagate() [2/2]

virtual std::optional<Acts::BoundTrackParameters> ActsTrk::IExtrapolationTool::propagate ( const EventContext &  ctx,
const Acts::BoundTrackParameters &  startParameters,
const Acts::Surface &  target,
Acts::Direction  navDir = Acts::Direction::Forward(),
double  pathLimit = std::numeric_limits< double >::max() 
) const
pure virtual

Extrapolates the track parameters from a start to a target surface and returns the extrapolated track parameters on that surface.

If the extrapolation fails, a nullopt is returned

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
targetReference to the surface onto which the track shall be extrapolated
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and the surface not yet reached.

◆ propagationSteps() [1/2]

virtual PropagationOutput ActsTrk::IExtrapolationTool::propagationSteps ( const EventContext &  ctx,
const Acts::BoundTrackParameters &  startParameters,
Acts::Direction  navDir = Acts::Direction::Forward(),
double  pathLimit = std::numeric_limits< double >::max() 
) const
pure virtual

Extrapolate the track parameters until the end of the world and record the performed steps & the allocated material.

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory, if not aborted by the end of the world condition otherwise.

◆ propagationSteps() [2/2]

virtual PropagationOutput ActsTrk::IExtrapolationTool::propagationSteps ( const EventContext &  ctx,
const Acts::BoundTrackParameters &  startParameters,
const Acts::Surface &  target,
Acts::Direction  navDir = Acts::Direction::Forward(),
double  pathLimit = std::numeric_limits< double >::max() 
) const
pure virtual

Extrapolate the track parameters from a start to a target surface and record the peformed steps & allocated parameters.

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
targetReference to the surface onto which the track shall be extrapolated
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and the surface not yet reached.

The documentation for this class was generated from the following file: