ATLAS Offline Software
Loading...
Searching...
No Matches
IOnTrackCalibratorTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ACTSTOOLINTERFACES_IONTRACKCALIBRATORTOOL_H
6#define ACTSTOOLINTERFACES_IONTRACKCALIBRATORTOOL_H
7
9
10namespace ActsTrk {
11
12 // @TODO remove traj_t template argument ?
13 template <typename cluster_t, std::size_t DIM, typename traj_t>
14 class OnTrackCalibratorBase : public OnBoundStateCalibratorBase<cluster_t,DIM> {
15 public:
17 using BASE::BASE;
18
21 using TrackStateProxy = typename Acts::MultiTrajectory<traj_t>::TrackStateProxy;
22
23 // @TODO should pass through bound state
24 using OnTrackCalibrator = Acts::Delegate<
25 std::pair<Pos, Cov>(const Acts::GeometryContext&,
26 const Acts::CalibrationContext&,
27 const cluster_t &,
28 const TrackStateProxy &)>;
29
30 virtual void connectOnTrackCalibrator(OnTrackCalibrator &calibrator) const = 0;
31
32 };
33
34 template <typename cluster_t, std::size_t DIM, typename traj_t>
35 class IOnTrackCalibratorTool : virtual public ActsTrk::traits::Calibrator<cluster_t,DIM>::ToolInterface {
36 public:
37 virtual std::unique_ptr<OnTrackCalibratorBase<cluster_t, DIM, traj_t> > createOnTrackCalibrator(const EventContext &ctx) const = 0;
38 };
39
40} // namespace ActsTrk
41
42#endif
virtual std::unique_ptr< OnTrackCalibratorBase< cluster_t, DIM, traj_t > > createOnTrackCalibrator(const EventContext &ctx) const =0
Base class of a InDet calibrator object.
Acts::Delegate< std::pair< Pos, Cov >(const Acts::GeometryContext &, const Acts::CalibrationContext &, const xAOD::HGTDCluster &, const TrackStateProxy &)> OnTrackCalibrator
typename Acts::MultiTrajectory< traj_t >::TrackStateProxy TrackStateProxy
virtual void connectOnTrackCalibrator(OnTrackCalibrator &calibrator) const =0
OnBoundStateCalibratorBase< xAOD::HGTDCluster, DIM > BASE
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Eigen::Matrix< float, N, N > MeasMatrix
Eigen::Matrix< float, N, 1 > MeasVector
Abrivation of the Matrix & Covariance definitions.
Helper struct to get the correct types for a certain cluster.