ATLAS Offline Software
TGC_ResidualPullCalculator.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 MUONTGC_RESIDUALPULLCALCULATOR_H
6 #define MUONTGC_RESIDUALPULLCALCULATOR_H
7 
10 #include "GaudiKernel/ServiceHandle.h"
11 
15 
16 namespace Muon
17 {
18 
32  {
33  public:
34  TGC_ResidualPullCalculator(const std::string&,const std::string&,const IInterface*);
35 
36  virtual ~TGC_ResidualPullCalculator()=default;
37 
38  virtual StatusCode initialize() override;
39 
40  using IResidualPullCalculator::residualPull;
51  virtual std::optional<Trk::ResidualPull> residualPull(
52  const Trk::MeasurementBase* measurement,
53  const Trk::TrackParameters* trkPar,
55  const Trk::TrackState::MeasurementType) const override;
56 
60  virtual std::array<double,5> residuals(
61  const Trk::MeasurementBase* measurement,
62  const Trk::TrackParameters* trkPar,
64  const Trk::TrackState::MeasurementType) const override;
65 
66  private:
67 
68  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
69 
71  double calcPull(const double residual,
72  const double locMesCov,
73  const double locTrkCov,
74  const Trk::ResidualPull::ResidualType&) const;
75 
76  };
77 } // end of namespace
78 
79 #endif
Muon::TGC_ResidualPullCalculator::TGC_ResidualPullCalculator
TGC_ResidualPullCalculator(const std::string &, const std::string &, const IInterface *)
Definition: TGC_ResidualPullCalculator.cxx:14
TrackParameters.h
Muon::TGC_ResidualPullCalculator
TGC-specific tool to calculate hit residual and pull from a RIO_OnTrack/TrackParameter pair.
Definition: TGC_ResidualPullCalculator.h:32
ClusterSeg::residual
@ residual
Definition: ClusterNtuple.h:20
Trk::IResidualPullCalculator
provides the interface for tools which calculate residuals and pulls.
Definition: IResidualPullCalculator.h:35
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
ResidualPull.h
Muon::TGC_ResidualPullCalculator::~TGC_ResidualPullCalculator
virtual ~TGC_ResidualPullCalculator()=default
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
Trk::TrackState::MeasurementType
MeasurementType
enum describing the flavour of MeasurementBase
Definition: TrackStateDefs.h:26
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::MeasurementBase
Definition: MeasurementBase.h:58
Muon::TGC_ResidualPullCalculator::residualPull
virtual std::optional< Trk::ResidualPull > residualPull(const Trk::MeasurementBase *measurement, const Trk::TrackParameters *trkPar, const Trk::ResidualPull::ResidualType, const Trk::TrackState::MeasurementType) const override
This function returns (creates!) a Trk::ResidualPull object, which contains the values of residual an...
Definition: TGC_ResidualPullCalculator.cxx:98
IResidualPullCalculator.h
Muon::TGC_ResidualPullCalculator::calcPull
double calcPull(const double residual, const double locMesCov, const double locTrkCov, const Trk::ResidualPull::ResidualType &) const
internal structuring: common code for calculating hit pulls
Definition: TGC_ResidualPullCalculator.cxx:223
Muon::TGC_ResidualPullCalculator::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: TGC_ResidualPullCalculator.h:68
AthAlgTool
Definition: AthAlgTool.h:26
Muon::TGC_ResidualPullCalculator::residuals
virtual std::array< double, 5 > residuals(const Trk::MeasurementBase *measurement, const Trk::TrackParameters *trkPar, const Trk::ResidualPull::ResidualType, const Trk::TrackState::MeasurementType) const override
This function is a light-weight version of the function above, designed for track fitters where speed...
Definition: TGC_ResidualPullCalculator.cxx:30
Trk::ResidualPull::ResidualType
ResidualType
Definition: ResidualPull.h:53
IMuonIdHelperSvc.h
Muon::TGC_ResidualPullCalculator::initialize
virtual StatusCode initialize() override
Definition: TGC_ResidualPullCalculator.cxx:21
ServiceHandle< Muon::IMuonIdHelperSvc >