 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef MUONSPACEPOINTCALIBRATOR_ISPACEPOINTCALIBRATOR_H
6 #define MUONSPACEPOINTCALIBRATOR_ISPACEPOINTCALIBRATOR_H
8 #include <GaudiKernel/IAlgTool.h>
9 #include <GaudiKernel/EventContext.h>
15 #include <Acts/EventData/SourceLink.hpp>
20 class GeometryContext;
23 class CalibrationContext;
24 class GeometryContext;
28 class CalibratedSpacePoint;
55 const double timeDelay)
const = 0;
70 const double timeDelay)
const = 0;
81 const double timeDelay)
const = 0;
94 const double timeDelay,
112 const Acts::CalibrationContext& cctx,
113 const Acts::SourceLink& link,
114 ActsTrk::MutableTrackStateBackend::TrackStateProxy state)
const = 0;
std::vector< CalibSpacePointPtr > CalibSpacePointVec
virtual CalibSpacePointVec calibrate(const EventContext &ctx, const std::vector< const SpacePoint * > &spacePoints, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const =0
Calibrates a set of space points.
Class describing a MuonSegment.
virtual CalibSpacePointPtr calibrate(const EventContext &ctx, const CalibratedSpacePoint &spacePoint, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const =0
Calibrates a single space point.
virtual CalibSpacePointPtr calibrate(const EventContext &ctx, const SpacePoint *spacePoint, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const =0
Calibrates a single space point.
virtual double driftVelocity(const EventContext &ctx, const CalibratedSpacePoint &spacePoint) const =0
Returns the drift velocity for a given drift-circle space point.
DeclareInterfaceID(ISpacePointCalibrator, 1, 0)
virtual double driftAcceleration(const EventContext &ctx, const CalibratedSpacePoint &spacePoint) const =0
Returns the drift acceleration for a given drift-circle space point.
virtual void stampSignsOnMeasurements(const xAOD::MuonSegment &segment) const =0
Stamps the signs of the drift radii w.r.t.
virtual CalibSpacePointVec calibrate(const Acts::CalibrationContext &cctx, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay, const CalibSpacePointVec &spacePoints) const =0
Refines the calibration constants of already calibrated space points.
The muon space point is the combination of two uncalibrated measurements one of them measures the eta...
std::unique_ptr< CalibratedSpacePoint > CalibSpacePointPtr
Interface class to refine the space point calibration with an external seed.
Eigen::Matrix< double, 3, 1 > Vector3D
This header ties the generic definitions in this package.
virtual void calibrateSourceLink(const Acts::GeometryContext &geoctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &link, ActsTrk::MutableTrackStateBackend::TrackStateProxy state) const =0
Function that's hooked to the calibration delegate of the implemented Acts fitters.
The calibrated Space point is created during the calibration process.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
virtual void updateSigns(const Amg::Vector3D &trackPos, const Amg::Vector3D &trackDir, CalibSpacePointVec &hitsToCalib) const =0
Update the signs of the drift radii for a given straight line track to fix the left <-> right ambigui...
virtual ~ISpacePointCalibrator()=default