ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | Static Private Attributes | List of all members
ActsTrk::detail::TrkMeasurementCalibrator Class Reference

Calibrator class that links the legacy Trk::MeasurementBase objects with the Acts MultiTrajectory track state proxies without applying any further calibrating the measurement
More...

#include <TrkMeasurementCalibrator.h>

Inheritance diagram for ActsTrk::detail::TrkMeasurementCalibrator:
Collaboration diagram for ActsTrk::detail::TrkMeasurementCalibrator:

Public Types

using SourceLink_t = const Trk::MeasurementBase *
 Abbrivation of the underlying source link type. More...
 
enum  ProjectorType {
  ProjectorType::e1DimNoTime = 0, ProjectorType::e1DimRotNoTime = 1, ProjectorType::e2DimNoTime = 2, ProjectorType::e1DimWithTime = 3,
  ProjectorType::e1DimRotWithTime = 4, ProjectorType::e2DimWithTime = 5
}
 Enum encoding the possible projectors used in ATLAS. More...
 
template<typename trajectory_t >
using TrackState_t = typename Acts::MultiTrajectory< trajectory_t >::TrackStateProxy
 Abbrivation of the track state proxy type. More...
 
template<typename trajectory_t >
using ConstTrackState_t = typename Acts::MultiTrajectory< trajectory_t >::ConstTrackStateProxy
 Abbrivation of the const track state proxy type. More...
 

Public Member Functions

 TrkMeasurementCalibrator ()=default
 Default constructor. More...
 
template<typename trajectory_t >
void calibrate (const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &sl, TrackState_t< trajectory_t > trackState) const
 Calibrator delegate implementation to calibrate the ActsTrk fit from Trk::MeasurementBase objects. More...
 
template<std::size_t Dim, typename trajectory_t , typename pos_t , typename cov_t >
void setState (const ProjectorType projector, const pos_t &locpos, const cov_t &cov, Acts::SourceLink link, TrackState_t< trajectory_t > &trackState) const
 Copy the local position & covariance into the Acts track state proxy. More...
 

Static Public Member Functions

static Acts::SourceLink pack (const Trk::MeasurementBase *meas)
 Packs the pointer to the track measurement into an Acts::SouceLink. More...
 
static const Trk::MeasurementBaseunpack (const Acts::SourceLink &sl)
 Unpacks the Acts::SourceLink to a Trk measurement. More...
 

Static Private Attributes

constexpr static std::array< Acts::BoundSubspaceIndices, 6 > s_boundSpaceIndices
 Array to map the Projector types to the bound index configurations used by the ATLAS detector measurements. More...
 

Detailed Description

Calibrator class that links the legacy Trk::MeasurementBase objects with the Acts MultiTrajectory track state proxies without applying any further calibrating the measurement

Definition at line 18 of file TrkMeasurementCalibrator.h.

Member Typedef Documentation

◆ ConstTrackState_t

template<typename trajectory_t >
using ActsTrk::detail::MeasurementCalibratorBase::ConstTrackState_t = typename Acts::MultiTrajectory<trajectory_t>::ConstTrackStateProxy
inherited

Abbrivation of the const track state proxy type.

Definition at line 44 of file MeasurementCalibratorBase.h.

◆ SourceLink_t

Abbrivation of the underlying source link type.

Definition at line 22 of file TrkMeasurementCalibrator.h.

◆ TrackState_t

template<typename trajectory_t >
using ActsTrk::detail::MeasurementCalibratorBase::TrackState_t = typename Acts::MultiTrajectory<trajectory_t>::TrackStateProxy
inherited

Abbrivation of the track state proxy type.

Definition at line 41 of file MeasurementCalibratorBase.h.

Member Enumeration Documentation

◆ ProjectorType

Enum encoding the possible projectors used in ATLAS.

Their integer representations correspond to the element index in the s_boundSpaceIndices member

Enumerator
e1DimNoTime 
e1DimRotNoTime 

Project out solely the locX (Applies to Itk strips, Rpc, Tgc, sTgc, Mm)

e2DimNoTime 

Project out solely the locY - Complementary projector if the strip plane is rotated (Applies to Itk endcap strips, Rpc, Tgc, sTgc)

e1DimWithTime 

Project out the two spatial coordinates - (Applies to ITk pixel, BI-Rpc, sTgc pad)

e1DimRotWithTime 

Project out the locX & time coordinate - (Applies to Rpc, Tgc, Mm, sTgc)

e2DimWithTime 

Project out the locY & time coordinate - (Applies to Rpc, Tgc, sTgc)

Definition at line 29 of file MeasurementCalibratorBase.h.

29  {
30  e1DimNoTime = 0,
31  e1DimRotNoTime = 1,
32  e2DimNoTime = 2,
34  e1DimWithTime = 3,
35  e1DimRotWithTime = 4,
36  e2DimWithTime = 5,
37  };

Constructor & Destructor Documentation

◆ TrkMeasurementCalibrator()

ActsTrk::detail::TrkMeasurementCalibrator::TrkMeasurementCalibrator ( )
default

Default constructor.

Member Function Documentation

◆ calibrate()

template<typename trajectory_t >
void ActsTrk::detail::TrkMeasurementCalibrator::calibrate ( const Acts::GeometryContext &  gctx,
const Acts::CalibrationContext &  cctx,
const Acts::SourceLink &  sl,
TrackState_t< trajectory_t >  trackState 
) const

Calibrator delegate implementation to calibrate the ActsTrk fit from Trk::MeasurementBase objects.

Template Parameters
trajectory_tTepmlate parameter of the underlying MultTrajectory container backend
Parameters
gctxGeometry context to access the alignment of the surface
cctxCalibration context to access the calibration constants from the conditions store
slReference to the packed ATLASSourceLink (a.k.a Trk::MeasurementBase)
trackStateReference to the multi trajectory track state to fill

◆ pack()

Acts::SourceLink ActsTrk::detail::TrkMeasurementCalibrator::pack ( const Trk::MeasurementBase meas)
static

Packs the pointer to the track measurement into an Acts::SouceLink.

Definition at line 8 of file TrkMeasurementCalibrator.cxx.

8  {
9  return Acts::SourceLink{meas};
10  }

◆ setState()

template<std::size_t Dim, typename trajectory_t , typename pos_t , typename cov_t >
void ActsTrk::detail::MeasurementCalibratorBase::setState ( const ProjectorType  projector,
const pos_t &  locpos,
const cov_t &  cov,
Acts::SourceLink  link,
TrackState_t< trajectory_t > &  trackState 
) const
inherited

Copy the local position & covariance into the Acts track state proxy.

Template Parameters
DimDimension of the measurement
trajectory_tData type of the track state proxy backend
pos_tData type of the [Dim x 1] position vector
cov_tData type of the [Dim x Dim] covariance matrix
Parameters
projectorProjector configuration of the measurement
locposCalibrated local postion
covCalibrated local covariance
linkSource link to associate with the state
trackStateRefrence to the track state proxy to write.

◆ unpack()

const Trk::MeasurementBase * ActsTrk::detail::TrkMeasurementCalibrator::unpack ( const Acts::SourceLink &  sl)
static

Unpacks the Acts::SourceLink to a Trk measurement.

Definition at line 11 of file TrkMeasurementCalibrator.cxx.

11  {
12  SourceLink_t meas = sl.template get<SourceLink_t>();
13  assert(meas != nullptr);
14  return meas;
15  }

Member Data Documentation

◆ s_boundSpaceIndices

constexpr static std::array<Acts::BoundSubspaceIndices, 6> ActsTrk::detail::MeasurementCalibratorBase::s_boundSpaceIndices
staticconstexprprivateinherited
Initial value:
{
Acts::BoundSubspaceIndices{Acts::eBoundLoc0},
Acts::BoundSubspaceIndices{Acts::eBoundLoc1},
Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundLoc1},
Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundTime},
Acts::BoundSubspaceIndices{Acts::eBoundLoc1, Acts::eBoundTime},
Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundTime}
}

Array to map the Projector types to the bound index configurations used by the ATLAS detector measurements.

Definition at line 66 of file MeasurementCalibratorBase.h.


The documentation for this class was generated from the following files:
ActsTrk::detail::TrkMeasurementCalibrator::SourceLink_t
const Trk::MeasurementBase * SourceLink_t
Abbrivation of the underlying source link type.
Definition: TrkMeasurementCalibrator.h:22