ATLAS Offline Software
IOnBoundStateCalibratorTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3  */
4 #ifndef ACTSTOOLINTERFACES_IONBOUNDSTATECALIBRATORTOOL_H
5 #define ACTSTOOLINTERFACES_IONBOUNDSTATECALIBRATORTOOL_H
6 
7 #include <GaudiKernel/IAlgTool.h>
8 
9 #include "Acts/Geometry/GeometryContext.hpp"
10 #include "Acts/Utilities/CalibrationContext.hpp"
11 #include "Acts/Utilities/Delegate.hpp"
12 #include "Acts/EventData/TrackParameters.hpp"
13 
17 
18 namespace ActsTrk {
19 
20 class IOnBoundStateCalibratorTool : virtual public IAlgTool {
21 public:
23 
26  // @TODO should pass through bound state
27  using PixelCalibrator = Acts::Delegate<
28  std::pair<PixelPos, PixelCov>(const Acts::GeometryContext&,
29  const Acts::CalibrationContext&,
30  const xAOD::PixelCluster &,
31  const Acts::BoundTrackParameters &)>;
32 
35  using StripCalibrator = Acts::Delegate<
36  std::pair<StripPos, StripCov>(const Acts::GeometryContext&,
37  const Acts::CalibrationContext&,
38  const xAOD::StripCluster &,
39  const Acts::BoundTrackParameters &)>;
40 
43  using HGTDCalibrator = Acts::Delegate<
44  std::pair<HgtdPos, HgtdCov>(const Acts::GeometryContext&,
45  const Acts::CalibrationContext&,
46  const xAOD::HGTDCluster &,
47  const Acts::BoundTrackParameters &)>;
48 
49 
50  // @TODO should pass through bound state
51 
55 
56  virtual void connectPixelCalibrator([[maybe_unused]] PixelCalibrator &calibrator) const {}
57  virtual void connectStripCalibrator([[maybe_unused]] StripCalibrator &calibrator) const {}
58  virtual void connectHGTDCalibrator([[maybe_unused]] HGTDCalibrator &calibrator) const {}
59 
60  virtual bool calibrateAfterMeasurementSelection() const =0;
61 };
62 
63 } // namespace ActsTrk
64 
65 #endif
ActsTrk::IOnBoundStateCalibratorTool
Definition: IOnBoundStateCalibratorTool.h:20
ActsTrk::IOnBoundStateCalibratorTool::StripPos
xAOD::MeasVector< 1 > StripPos
Definition: IOnBoundStateCalibratorTool.h:33
ActsTrk::IOnBoundStateCalibratorTool::HgtdPos
xAOD::MeasVector< 3 > HgtdPos
Definition: IOnBoundStateCalibratorTool.h:41
ActsTrk::IOnBoundStateCalibratorTool::hgtdCalibrator
HGTDCalibrator hgtdCalibrator
Definition: IOnBoundStateCalibratorTool.h:54
xAOD::HGTDCluster_v1
Definition: HGTDCluster_v1.h:23
ActsTrk::IOnBoundStateCalibratorTool::StripCalibrator
Acts::Delegate< std::pair< StripPos, StripCov >(const Acts::GeometryContext &, const Acts::CalibrationContext &, const xAOD::StripCluster &, const Acts::BoundTrackParameters &)> StripCalibrator
Definition: IOnBoundStateCalibratorTool.h:39
ActsTrk::IOnBoundStateCalibratorTool::PixelCalibrator
Acts::Delegate< std::pair< PixelPos, PixelCov >(const Acts::GeometryContext &, const Acts::CalibrationContext &, const xAOD::PixelCluster &, const Acts::BoundTrackParameters &)> PixelCalibrator
Definition: IOnBoundStateCalibratorTool.h:31
ActsTrk::IOnBoundStateCalibratorTool::connectStripCalibrator
virtual void connectStripCalibrator([[maybe_unused]] StripCalibrator &calibrator) const
Definition: IOnBoundStateCalibratorTool.h:57
ActsTrk::IOnBoundStateCalibratorTool::connectHGTDCalibrator
virtual void connectHGTDCalibrator([[maybe_unused]] HGTDCalibrator &calibrator) const
Definition: IOnBoundStateCalibratorTool.h:58
ActsTrk::IOnBoundStateCalibratorTool::DeclareInterfaceID
DeclareInterfaceID(IOnBoundStateCalibratorTool, 1, 0)
PixelClusterContainer.h
HGTDClusterContainer.h
ActsTrk::IOnBoundStateCalibratorTool::HGTDCalibrator
Acts::Delegate< std::pair< HgtdPos, HgtdCov >(const Acts::GeometryContext &, const Acts::CalibrationContext &, const xAOD::HGTDCluster &, const Acts::BoundTrackParameters &)> HGTDCalibrator
Definition: IOnBoundStateCalibratorTool.h:47
xAOD::StripCluster_v1
Definition: StripCluster_v1.h:17
ActsTrk::IOnBoundStateCalibratorTool::connectPixelCalibrator
virtual void connectPixelCalibrator([[maybe_unused]] PixelCalibrator &calibrator) const
Definition: IOnBoundStateCalibratorTool.h:56
xAOD::MeasVector
Eigen::Matrix< float, N, 1 > MeasVector
Abrivation of the Matrix & Covariance definitions.
Definition: MeasurementDefs.h:52
ActsTrk::IOnBoundStateCalibratorTool::PixelPos
xAOD::MeasVector< 2 > PixelPos
Definition: IOnBoundStateCalibratorTool.h:24
xAOD::PixelCluster_v1
Definition: PixelCluster_v1.h:17
ActsTrk::IOnBoundStateCalibratorTool::HgtdCov
xAOD::MeasMatrix< 3 > HgtdCov
Definition: IOnBoundStateCalibratorTool.h:42
StripClusterContainer.h
ActsTrk::IOnBoundStateCalibratorTool::StripCov
xAOD::MeasMatrix< 1 > StripCov
Definition: IOnBoundStateCalibratorTool.h:34
ActsTrk::IOnBoundStateCalibratorTool::stripCalibrator
StripCalibrator stripCalibrator
Definition: IOnBoundStateCalibratorTool.h:53
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:54
ActsTrk::IOnBoundStateCalibratorTool::pixelCalibrator
PixelCalibrator pixelCalibrator
Definition: IOnBoundStateCalibratorTool.h:52
ActsTrk::IOnBoundStateCalibratorTool::calibrateAfterMeasurementSelection
virtual bool calibrateAfterMeasurementSelection() const =0
xAOD::MeasMatrix
Eigen::Matrix< float, N, N > MeasMatrix
Definition: MeasurementDefs.h:54
ActsTrk::IOnBoundStateCalibratorTool::PixelCov
xAOD::MeasMatrix< 2 > PixelCov
Definition: IOnBoundStateCalibratorTool.h:25