ATLAS Offline Software
Loading...
Searching...
No Matches
IOnBoundStateCalibratorTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 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/BoundTrackParameters.hpp"
13
17
18namespace ActsTrk {
19
21 public:
23 };
24
28 template <typename cluster_t, std::size_t DIM>
30 public:
31 using ClusterType = cluster_t;
32 static constexpr std::size_t ClusterDIM = DIM;
35 using Calibrator = Acts::Delegate<
36 std::pair<Pos, Cov>(const Acts::GeometryContext&,
37 const Acts::CalibrationContext&,
38 const Acts::Surface&,
39 const cluster_t &,
40 const Acts::BoundTrackParameters &)>;
41
43 virtual void connectCalibrator(Calibrator &calibrator) const =0;
44 };
45
47 template <typename cluster_t, std::size_t DIM>
48 class IOnBoundStateCalibratorTool : virtual public IAlgTool {
49 public:
51 virtual std::unique_ptr<OnBoundStateCalibratorBase<cluster_t, DIM>> create(const EventContext &ctx) const = 0;
52
55 virtual bool calibrateAfterMeasurementSelection() const =0;
56 };
57
58 namespace traits {
60 template <typename T, std::size_t DIM>
61 struct Calibrator {
63 // @TODO remove:
64 // using Calibrator = OnBoundStateCalibratorBase<T,DIM>;
65 };
66 }
67
68} // namespace ActsTrk
69
70#endif
interface of a tool to create a calibrator for a certain cluster type.
virtual std::unique_ptr< OnBoundStateCalibratorBase< cluster_t, DIM > > create(const EventContext &ctx) const =0
Create a calibrator object for the given event.
virtual bool calibrateAfterMeasurementSelection() const =0
Base class of a InDet calibrator object.
Acts::Delegate< std::pair< Pos, Cov >(const Acts::GeometryContext &, const Acts::CalibrationContext &, const Acts::Surface &, const xAOD::HGTDCluster &, const Acts::BoundTrackParameters &)> Calibrator
virtual void connectCalibrator(Calibrator &calibrator) const =0
Connect this calibrator to the provided delegate.
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.
IOnBoundStateCalibratorTool< T, DIM > ToolInterface