ATLAS Offline Software
SegmentActsRefitAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef MUONPATTERNRECOGNITIONALGS_SEGMENTACTSREFITALG_H
5 #define MUONPATTERNRECOGNITIONALGS_SEGMENTACTSREFITALG_H
6 
8 
12 
22 
23 
24 namespace CLHEP{
25  class HepRandomEngine;
26 }
31 namespace MuonR4{
33  public:
34  using AthReentrantAlgorithm::AthReentrantAlgorithm;
35  virtual StatusCode initialize() override final;
36  virtual StatusCode execute(const EventContext& ctx) const override final;
37  private:
43  std::tuple<Amg::Vector3D, Amg::Vector3D> smearSegment(const ActsGeometryContext& gctx,
44  const MuonR4::Segment& segment,
45  CLHEP::HepRandomEngine* engine) const;
47  SG::ReadHandleKey<xAOD::MuonSegmentContainer> m_readKey{this, "SegmentContainer", "MuonSegmentsFromR4"};
49  SG::WriteHandleKey<xAOD::MuonSegmentContainer> m_writeKey{this, "OutContainer", "ActsRefitSegments"};
56 
58  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "IdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
60  ToolHandle<ActsTrk::IFitterTool> m_trackFitTool{this, "FittingTool", ""};
62  PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", ""};
64  ToolHandle<IActsExtrapolationTool> m_extrapolationTool{this, "ExtrapolationTool" ,"" };
66  ToolHandle<MuonR4::ISegmentSelectionTool> m_segSelector{this, "SegmentSelectionTool" , "" };
68  ServiceHandle<IAthRNGSvc> m_rndmSvc{this, "RndmSvc", "AthRNGSvc", ""};
70  Gaudi::Property<double> m_smearRange{this, "SmearRange", 3.};
72  SG::WriteHandleKey<xAOD::TrackSurfaceContainer> m_surfKey{this, "SurfaceKey", "RefitSegmentSurf"};
73 
75 
76 
77  };
78 }
79 
80 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
MuonR4::SegmentActsRefitAlg::initialize
virtual StatusCode initialize() override final
Definition: SegmentActsRefitAlg.cxx:36
SG::WriteDecorHandleKey< xAOD::MuonSegmentContainer >
MuonR4::SegmentActsRefitAlg
Definition: SegmentActsRefitAlg.h:32
MuonR4::Segment
Placeholder for what will later be the muon segment EDM representation.
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonPatternEvent/MuonPatternEvent/Segment.h:19
MuonR4::SegmentActsRefitAlg::m_linkKey
SG::WriteDecorHandleKey< xAOD::MuonSegmentContainer > m_linkKey
Construct a link from the refitted segment to the input segment.
Definition: SegmentActsRefitAlg.h:51
MuonR4::SegmentActsRefitAlg::m_localParsKey
SG::WriteDecorHandleKey< xAOD::MuonSegmentContainer > m_localParsKey
Decorate directly the local segment parameters on to the object.
Definition: SegmentActsRefitAlg.h:53
SG::ReadHandleKey< xAOD::MuonSegmentContainer >
MuonSegmentContainer.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
MuonR4::SegmentActsRefitAlg::m_readKey
SG::ReadHandleKey< xAOD::MuonSegmentContainer > m_readKey
Declare the data dependency on the standard Mdt+Rpc+Tgc segment container.
Definition: SegmentActsRefitAlg.h:47
MuonR4::SegmentActsRefitAlg::m_smearRange
Gaudi::Property< double > m_smearRange
Smear interval in terms of standard deviations.
Definition: SegmentActsRefitAlg.h:70
ActsTrk::AuxiliaryMeasurementHandler
Utility class to handle the creation of the Auxiliary measurement used in an Acts track fit This clas...
Definition: AuxiliaryMeasurementHandler.h:21
MuonR4::SegmentActsRefitAlg::m_writeKey
SG::WriteHandleKey< xAOD::MuonSegmentContainer > m_writeKey
Declare the key for the refitted segment container.
Definition: SegmentActsRefitAlg.h:49
SG::WriteHandleKey< xAOD::MuonSegmentContainer >
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonR4::SegmentActsRefitAlg::m_rndmSvc
ServiceHandle< IAthRNGSvc > m_rndmSvc
Range service to smear the segment parameters.
Definition: SegmentActsRefitAlg.h:68
CLHEP
STD'S.
Definition: CaloNoiseCompCondAlg.h:58
ISegmentSelectionTool.h
MuonPatternContainer.h
MuonR4::SegmentActsRefitAlg::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
IdHelperSvc to decode the Identifiers.
Definition: SegmentActsRefitAlg.h:58
MuonR4::SegmentActsRefitAlg::m_trackFitTool
ToolHandle< ActsTrk::IFitterTool > m_trackFitTool
Track fitting tool.
Definition: SegmentActsRefitAlg.h:60
MuonR4::SegmentActsRefitAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: SegmentActsRefitAlg.cxx:72
ActsGeometryContext
Include the GeoPrimitives which need to be put first.
Definition: ActsGeometryContext.h:27
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
IFitterTool.h
MuonR4::SegmentActsRefitAlg::smearSegment
std::tuple< Amg::Vector3D, Amg::Vector3D > smearSegment(const ActsGeometryContext &gctx, const MuonR4::Segment &segment, CLHEP::HepRandomEngine *engine) const
Smear the segment's position and direction by one sigma defined by the segment's covariance.
Definition: SegmentActsRefitAlg.cxx:54
MuonR4
This header ties the generic definitions in this package.
Definition: HoughEventData.h:16
MuonR4::SegmentActsRefitAlg::m_extrapolationTool
ToolHandle< IActsExtrapolationTool > m_extrapolationTool
Track extrapolation tool.
Definition: SegmentActsRefitAlg.h:64
MuonR4::SegmentActsRefitAlg::m_surfKey
SG::WriteHandleKey< xAOD::TrackSurfaceContainer > m_surfKey
Key to setup a surface container for the external constraints.
Definition: SegmentActsRefitAlg.h:72
ITrackingGeometryTool.h
IMuonIdHelperSvc.h
IActsExtrapolationTool.h
AuxiliaryMeasurementHandler.h
MuonR4::SegmentActsRefitAlg::m_trackingGeometryTool
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
Tracking geometry tool.
Definition: SegmentActsRefitAlg.h:62
NSWL1::PadTriggerAdapter::segment
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
Definition: PadTriggerAdapter.cxx:5
MuonR4::SegmentActsRefitAlg::m_segSelector
ToolHandle< MuonR4::ISegmentSelectionTool > m_segSelector
Segment selection tool to pick the good quality segments.
Definition: SegmentActsRefitAlg.h:66
IAthRNGSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
MuonR4::SegmentActsRefitAlg::m_seedParsKey
SG::WriteDecorHandleKey< xAOD::MuonSegmentContainer > m_seedParsKey
Decorate the seed parameters entering the fit.
Definition: SegmentActsRefitAlg.h:55
MuonR4::SegmentActsRefitAlg::m_auxMeasProv
ActsTrk::AuxiliaryMeasurementHandler m_auxMeasProv
Definition: SegmentActsRefitAlg.h:74