ATLAS Offline Software
Loading...
Searching...
No Matches
IMdtDriftCircleOnTrackCreator.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUON_IMDTDRIFTCIRCLEONTRACKCREATOR_H
6#define MUON_IMDTDRIFTCIRCLEONTRACKCREATOR_H
7
8#include "GaudiKernel/IAlgTool.h"
15
16#include <memory>
17namespace Muon {
18
19 class MdtPrepData;
20
25 public:
28 virtual ~IMdtDriftCircleOnTrackCreator() = default;
41 const Amg::Vector3D& GP,
42 const Amg::Vector3D* GD = nullptr,
43 const double t0Shift = 0,
44 const MuonDriftCircleErrorStrategy* strategy = nullptr,
45 const double beta = 1,
46 const double tTrack = 0) const = 0;
47
52 virtual void updateSign(MdtDriftCircleOnTrack& DCT, const Trk::DriftCircleSide si) const = 0;
53
61 const Trk::TrackParameters* pars = nullptr,
62 const MuonDriftCircleErrorStrategy* strategy = nullptr) const = 0;
63
71 virtual MdtRotPtr correct(const MdtPrepData& prd,
72 const Trk::TrackParameters& tp,
73 const MuonDriftCircleErrorStrategy* strategy,
74 const double beta = 1,
75 const double tTrack = 0) const = 0;
76
78 virtual const MuonDriftCircleErrorStrategy& errorStrategy() const = 0;
79 };
80} // namespace Muon
81
82#endif // MUON_IMDTDRIFTCIRCLEONTRACKCREATOR_H
Interface for tools calibrating MdtPrepData, turning them into Muon::MdtDriftCircleOnTrack object.
virtual MdtRotPtr createRIO_OnTrack(const MdtPrepData &DC, const Amg::Vector3D &GP, const Amg::Vector3D *GD=nullptr, const double t0Shift=0, const MuonDriftCircleErrorStrategy *strategy=nullptr, const double beta=1, const double tTrack=0) const =0
Calibrate a MdtPrepData object.
virtual MdtRotPtr correct(const MdtPrepData &prd, const Trk::TrackParameters &tp, const MuonDriftCircleErrorStrategy *strategy, const double beta=1, const double tTrack=0) const =0
virtual const MuonDriftCircleErrorStrategy & errorStrategy() const =0
Returns the default error strategy object.
DeclareInterfaceID(Muon::IMdtDriftCircleOnTrackCreator, 1, 0)
virtual ~IMdtDriftCircleOnTrackCreator()=default
Default desructor.
virtual MdtRotPtr updateError(const MdtDriftCircleOnTrack &DCT, const Trk::TrackParameters *pars=nullptr, const MuonDriftCircleErrorStrategy *strategy=nullptr) const =0
Update error of a ROT without changing the drift radius.
virtual void updateSign(MdtDriftCircleOnTrack &DCT, const Trk::DriftCircleSide si) const =0
Update of the sign of the drift radius.
This class represents the corrected MDT measurements, where the corrections include the effects of wi...
Class to represent measurements from the Monitored Drift Tubes.
Definition MdtPrepData.h:33
Interface class for transforming Trk::PrepRawData to Trk::RIO_OnTrack using a local track hypothesis.
virtual RIO_OnTrack * correct(const PrepRawData &hit, const TrackParameters &trk, const EventContext &ctx) const =0
abstract base method for the creation of RIO_OnTrack it takes a RIO (PrepRawData) and the given Track...
Eigen::Matrix< double, 3, 1 > Vector3D
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
DriftCircleSide
Enumerates the 'side' of the wire on which the tracks passed (i.e.
ParametersBase< TrackParametersDim, Charged > TrackParameters