Juggler
Juggling algorithms and event processing using gaudi framework
Jug::Reco::TrackFittingAlgorithm Class Reference

#include <TrackFittingAlgorithm.h>

Inheritance diagram for Jug::Reco::TrackFittingAlgorithm:

Public Types

using TrackFitterOptions = Acts::KalmanFitterOptions
 
using FitterResult = Acts::Result< Acts::KalmanFitterResult >
 
using FitterFunction = std::function< FitterResult(const std::vector< IndexSourceLink > &, const TrackParameters &, const TrackFitterOptions &)>
 Fit function that takes input measurements, initial trackstate and fitter. More...
 

Public Member Functions

 TrackFittingAlgorithm (const std::string &name, ISvcLocator *svcLoc)
 
StatusCode initialize () override
 
StatusCode execute () override
 

Static Public Member Functions

static FitterFunction makeTrackFittingFunction (std::shared_ptr< const Acts::TrackingGeometry > trackingGeometry, std::shared_ptr< const Acts::MagneticFieldProvider > magneticField)
 

Public Attributes

DataHandle< IndexSourceLinkContainerm_inputSourceLinks {"inputSourceLinks", Gaudi::DataHandle::Reader, this}
 
DataHandle< TrackParametersContainerm_initialTrackParameters {"initialTrackParameters", Gaudi::DataHandle::Reader, this}
 
DataHandle< MeasurementContainerm_inputMeasurements {"inputMeasurements", Gaudi::DataHandle::Reader, this}
 
DataHandle< ProtoTrackContainerm_inputProtoTracks {"inputProtoTracks", Gaudi::DataHandle::Reader, this}
 
DataHandle< TrajectoriesContainerm_foundTracks {"foundTracks", Gaudi::DataHandle::Reader, this}
 
DataHandle< TrajectoriesContainerm_outputTrajectories {"outputTrajectories", Gaudi::DataHandle::Writer, this}
 
FitterFunction m_trackFittingFunc
 
SmartIF< IGeoSvcm_geoSvc
 
std::shared_ptr< const Jug::BField::DD4hepBFieldm_BField = nullptr
 
Acts::GeometryContext m_geoctx
 
Acts::CalibrationContext m_calibctx
 
Acts::MagneticFieldContext m_fieldctx
 

Detailed Description

Fitting algorithm implmentation .

Member Typedef Documentation

◆ FitterFunction

Fit function that takes input measurements, initial trackstate and fitter.

◆ FitterResult

using Jug::Reco::TrackFittingAlgorithm::FitterResult = Acts::Result<Acts::KalmanFitterResult>

◆ TrackFitterOptions

using Jug::Reco::TrackFittingAlgorithm::TrackFitterOptions = Acts::KalmanFitterOptions

Track fitter function that takes input measurements, initial trackstate and fitter options and returns some track-fitter-specific result.

Constructor & Destructor Documentation

◆ TrackFittingAlgorithm()

Jug::Reco::TrackFittingAlgorithm::TrackFittingAlgorithm ( const std::string &  name,
ISvcLocator *  svcLoc 
)

Member Function Documentation

◆ execute()

StatusCode Jug::Reco::TrackFittingAlgorithm::execute ( )
override

◆ initialize()

StatusCode Jug::Reco::TrackFittingAlgorithm::initialize ( )
override

◆ makeTrackFittingFunction()

TrackFittingAlgorithm::FitterFunction Jug::Reco::TrackFittingAlgorithm::makeTrackFittingFunction ( std::shared_ptr< const Acts::TrackingGeometry >  trackingGeometry,
std::shared_ptr< const Acts::MagneticFieldProvider >  magneticField 
)
static

Create the track finder function implementation. The magnetic field is intentionally given by-value since the variant contains shared_ptr anyways.

Member Data Documentation

◆ m_BField

std::shared_ptr<const Jug::BField::DD4hepBField> Jug::Reco::TrackFittingAlgorithm::m_BField = nullptr

◆ m_calibctx

Acts::CalibrationContext Jug::Reco::TrackFittingAlgorithm::m_calibctx

◆ m_fieldctx

Acts::MagneticFieldContext Jug::Reco::TrackFittingAlgorithm::m_fieldctx

◆ m_foundTracks

DataHandle<TrajectoriesContainer> Jug::Reco::TrackFittingAlgorithm::m_foundTracks {"foundTracks", Gaudi::DataHandle::Reader, this}

◆ m_geoctx

Acts::GeometryContext Jug::Reco::TrackFittingAlgorithm::m_geoctx

◆ m_geoSvc

SmartIF<IGeoSvc> Jug::Reco::TrackFittingAlgorithm::m_geoSvc

◆ m_initialTrackParameters

DataHandle<TrackParametersContainer> Jug::Reco::TrackFittingAlgorithm::m_initialTrackParameters {"initialTrackParameters", Gaudi::DataHandle::Reader, this}

◆ m_inputMeasurements

DataHandle<MeasurementContainer> Jug::Reco::TrackFittingAlgorithm::m_inputMeasurements {"inputMeasurements", Gaudi::DataHandle::Reader, this}

◆ m_inputProtoTracks

DataHandle<ProtoTrackContainer> Jug::Reco::TrackFittingAlgorithm::m_inputProtoTracks {"inputProtoTracks", Gaudi::DataHandle::Reader, this}

◆ m_inputSourceLinks

DataHandle<IndexSourceLinkContainer> Jug::Reco::TrackFittingAlgorithm::m_inputSourceLinks {"inputSourceLinks", Gaudi::DataHandle::Reader, this}

◆ m_outputTrajectories

DataHandle<TrajectoriesContainer> Jug::Reco::TrackFittingAlgorithm::m_outputTrajectories {"outputTrajectories", Gaudi::DataHandle::Writer, this}

◆ m_trackFittingFunc

FitterFunction Jug::Reco::TrackFittingAlgorithm::m_trackFittingFunc

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