Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
MuonDetectorNavTest.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef MUONDETECTORNAVTEST_MUONDETECTORNAVTEST_H
5 #define MUONDETECTORNAVTEST_MUONDETECTORNAVTEST_H
6 
9 
12 
19 
20 
25 
27 
28 #include "Acts/MagneticField/MagneticFieldContext.hpp"
29 #include "Acts/Navigation/DetectorNavigator.hpp"
31 
32 namespace ActsTrk {
34  public:
36 
37  ~MuonDetectorNavTest() = default;
38 
39  StatusCode execute() override;
40  StatusCode initialize() override;
41  StatusCode finalize() override;
42 
43  private:
44 
45  Amg::Transform3D toGlobalTrf(const ActsGeometryContext& gctx, const Identifier& hitId) const;
46 
47  Amg::Transform3D toLocalTrf(const ActsGeometryContext& gctx, const Identifier& hitId) const;
48 
49  IdentifierHash layerHash(const Identifier& id) const;
50 
51  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "IdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
52 
53  SG::ReadCondHandleKey<AtlasFieldCacheCondObj> m_fieldCacheCondObjInputKey {this, "AtlasFieldCacheCondObj", "fieldCondObj", "Name of the Magnetic Field conditions object key"};
54 
55  SG::ReadHandleKey<ActsGeometryContext> m_geoCtxKey{this, "AlignmentKey", "ActsAlignment", "cond handle key"};
56 
58 
59  SG::ReadDecorHandleKey<xAOD::TruthParticleContainer> m_truthSegLinkKey{this, "TruthKeyToSeg", m_truthParticleKey, "truthSegLinks", "TruthParticle to TruthSegment link"};
60 
62 
63  BooleanProperty m_drawEvent{this, "DrawEvent", false};
64 
65  DoubleProperty m_pathLimit{this, "PathLimit", 23.*Gaudi::Units::m};
66 
67  DoubleProperty m_maxStepSize{this, "MaxStepSize", 1.*Gaudi::Units::m};
68 
69  UnsignedIntegerProperty m_maxSteps{this, "MaxSteps", 100000};
70 
71  DoubleProperty m_stepTolerance{this, "StepTolerance", 1e-10};
72 
73  UnsignedIntegerProperty m_maxTargetSkipping{this, "MaxTargetSkipping", 10000};
74 
75  ServiceHandle<ActsTrk::IDetectorVolumeSvc> m_detVolSvc{this, "DetectorVolumeSvc", "DetectorVolumeSvc"};
76 
77  ToolHandle<Trk::IExtrapolator> m_extrapolator{this, "Extrapolator",
78  "Trk::Extrapolator/AtlasExtrapolator" "Tool for ATLAS Extrapolator"};
79 
81  "MuonDetectorManager", "MuonManager ReadKey for IOV Range intersection"};
82 
83  Gaudi::Property<bool> m_startFromFirstHit{this, "StartFromFirstHit", false, "Start from first hit"};
84 
85  MuonVal::MuonTesterTree m_tree{"MuonNavigationTestR4", "MuonNavigationTestR4"};
110 
111  };
112 }
113 #endif
ReadHandleKeyArray.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
ActsTrk::MuonDetectorNavTest::m_truthDir
MuonVal::ThreeVectorBranch m_truthDir
Definition: MuonDetectorNavTest.h:93
ActsTrk::MuonDetectorNavTest::m_startFromFirstHit
Gaudi::Property< bool > m_startFromFirstHit
Definition: MuonDetectorNavTest.h:83
AthHistogramAlgorithm::AthHistogramAlgorithm
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition: AthHistogramAlgorithm.cxx:31
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:62
ActsTrk::MuonDetectorNavTest::m_tree
MuonVal::MuonTesterTree m_tree
Definition: MuonDetectorNavTest.h:85
ActsTrk::MuonDetectorNavTest::m_detId
MuonVal::MuonIdentifierBranch m_detId
Definition: MuonDetectorNavTest.h:86
ActsGeometryContext.h
ActsTrk::MuonDetectorNavTest::m_drawEvent
BooleanProperty m_drawEvent
Definition: MuonDetectorNavTest.h:63
ActsTrk::MuonDetectorNavTest::m_actsPropMomentum
MuonVal::VectorBranch< float > & m_actsPropMomentum
Definition: MuonDetectorNavTest.h:89
TruthParticleContainer.h
ActsTrk::MuonDetectorNavTest::m_truthPt
MuonVal::ScalarBranch< float > & m_truthPt
Definition: MuonDetectorNavTest.h:107
ActsTrk::MuonDetectorNavTest::m_isPropagated
MuonVal::VectorBranch< unsigned short > & m_isPropagated
Definition: MuonDetectorNavTest.h:101
ATLASMagneticFieldWrapper.h
ActsTrk::MuonDetectorNavTest::m_matchedTruthFraction
MuonVal::ScalarBranch< float > & m_matchedTruthFraction
Definition: MuonDetectorNavTest.h:105
ActsTrk::MuonDetectorNavTest::m_atlasPropLoc
MuonVal::ThreeVectorBranch m_atlasPropLoc
Definition: MuonDetectorNavTest.h:96
ActsTrk::MuonDetectorNavTest::m_propSteps
MuonVal::ScalarBranch< unsigned int > & m_propSteps
Definition: MuonDetectorNavTest.h:102
IExtrapolator.h
ActsTrk::MuonDetectorNavTest::m_stepTolerance
DoubleProperty m_stepTolerance
Definition: MuonDetectorNavTest.h:71
ActsTrk::MuonDetectorNavTest::m_detMgrKey
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_detMgrKey
Definition: MuonDetectorNavTest.h:80
MuonVal::VectorBranch< unsigned short >
MuonTesterTree.h
ActsTrk::MuonDetectorNavTest::execute
StatusCode execute() override
Definition: MuonDetectorNavTest.cxx:105
ThreeVectorBranch.h
SG::ReadHandleKey< ActsGeometryContext >
MuonVal::ThreeVectorBranch
Definition: ThreeVectorBranch.h:19
AthHistogramAlgorithm.h
ActsTrk::MuonDetectorNavTest::m_event
MuonVal::ScalarBranch< unsigned int > & m_event
Definition: MuonDetectorNavTest.h:109
ActsTrk::MuonDetectorNavTest::m_extrapolator
ToolHandle< Trk::IExtrapolator > m_extrapolator
Definition: MuonDetectorNavTest.h:77
ActsTrk::MuonDetectorNavTest::m_atlasPropGlob
MuonVal::ThreeVectorBranch m_atlasPropGlob
Definition: MuonDetectorNavTest.h:98
ActsTrk::MuonDetectorNavTest
Definition: MuonDetectorNavTest.h:33
ActsTrk::MuonDetectorNavTest::m_techIdx
MuonVal::VectorBranch< unsigned short > & m_techIdx
Definition: MuonDetectorNavTest.h:87
ActsTrk::MuonDetectorNavTest::m_fieldCacheCondObjInputKey
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCacheCondObjInputKey
Definition: MuonDetectorNavTest.h:53
ActsTrk::MuonDetectorNavTest::m_r4DetMgr
const MuonGMR4::MuonDetectorManager * m_r4DetMgr
Definition: MuonDetectorNavTest.h:61
ActsTrk::MuonDetectorNavTest::m_geoCtxKey
SG::ReadHandleKey< ActsGeometryContext > m_geoCtxKey
Definition: MuonDetectorNavTest.h:55
MuonVal::MuonTesterTree
Definition: MuonTesterTree.h:30
IdentifierBranch.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ActsTrk::MuonDetectorNavTest::m_truthParticleKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticleKey
Definition: MuonDetectorNavTest.h:57
ActsTrk::MuonDetectorNavTest::m_truthLoc
MuonVal::ThreeVectorBranch m_truthLoc
Definition: MuonDetectorNavTest.h:92
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
ActsTrk::MuonDetectorNavTest::m_actsPropDir
MuonVal::ThreeVectorBranch m_actsPropDir
Definition: MuonDetectorNavTest.h:99
ActsTrk::MuonDetectorNavTest::m_truthSegLinkKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_truthSegLinkKey
Definition: MuonDetectorNavTest.h:59
MuonDetectorManager.h
ActsTrk::MuonDetectorNavTest::m_atlasPropMomentum
MuonVal::VectorBranch< float > & m_atlasPropMomentum
Definition: MuonDetectorNavTest.h:90
ActsTrk::MuonDetectorNavTest::~MuonDetectorNavTest
~MuonDetectorNavTest()=default
MuonSimHitContainer.h
ActsTrk::MuonDetectorNavTest::m_maxSteps
UnsignedIntegerProperty m_maxSteps
Definition: MuonDetectorNavTest.h:69
ActsTrk::MuonDetectorNavTest::m_actsPropGlob
MuonVal::ThreeVectorBranch m_actsPropGlob
Definition: MuonDetectorNavTest.h:97
ActsTrk::MuonDetectorNavTest::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonDetectorNavTest.h:51
MuonVal::MuonTesterTree::newVector
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
AthHistogramAlgorithm
Definition: AthHistogramAlgorithm.h:32
ActsTrk::MuonDetectorNavTest::initialize
StatusCode initialize() override
Definition: MuonDetectorNavTest.cxx:82
ActsGeometryContext
Include the GeoPrimitives which need to be put first.
Definition: ActsGeometryContext.h:27
ReadCondHandleKey.h
ActsTrk::MuonDetectorNavTest::m_truthGlob
MuonVal::ThreeVectorBranch m_truthGlob
Definition: MuonDetectorNavTest.h:94
ActsTrk::MuonDetectorNavTest::finalize
StatusCode finalize() override
Definition: MuonDetectorNavTest.cxx:99
IDetectorVolumeSvc.h
MuonVal::ScalarBranch< unsigned int >
ActsTrk::MuonDetectorNavTest::m_maxStepSize
DoubleProperty m_maxStepSize
Definition: MuonDetectorNavTest.h:67
ActsTrk::MuonDetectorNavTest::m_startGlob
MuonVal::ThreeVectorBranch m_startGlob
Definition: MuonDetectorNavTest.h:91
MuonVal::MuonTesterTree::newScalar
ScalarBranch< T > & newScalar(const std::string &name)
MuonVal::MuonIdentifierBranch
Class to dump the basic properties of an Identifier into an n-tuple StationName -> BIS,...
Definition: IdentifierBranch.h:21
ActsTrk::MuonDetectorNavTest::layerHash
IdentifierHash layerHash(const Identifier &id) const
Definition: MuonDetectorNavTest.cxx:78
ActsTrk::MuonDetectorNavTest::m_actsStepSize
MuonVal::VectorBranch< float > & m_actsStepSize
Definition: MuonDetectorNavTest.h:104
MuonDetectorManager.h
ActsTrk::MuonDetectorNavTest::m_truthP
MuonVal::ScalarBranch< float > & m_truthP
Definition: MuonDetectorNavTest.h:108
SG::ReadCondHandleKey< AtlasFieldCacheCondObj >
ActsTrk::MuonDetectorNavTest::m_atlasPropDir
MuonVal::ThreeVectorBranch m_atlasPropDir
Definition: MuonDetectorNavTest.h:100
ActsTrk::MuonDetectorNavTest::m_maxTargetSkipping
UnsignedIntegerProperty m_maxTargetSkipping
Definition: MuonDetectorNavTest.h:73
ActsTrk::MuonDetectorNavTest::m_pathLimit
DoubleProperty m_pathLimit
Definition: MuonDetectorNavTest.h:65
ActsTrk::MuonDetectorNavTest::m_detVolSvc
ServiceHandle< ActsTrk::IDetectorVolumeSvc > m_detVolSvc
Definition: MuonDetectorNavTest.h:75
ActsTrk::MuonDetectorNavTest::toLocalTrf
Amg::Transform3D toLocalTrf(const ActsGeometryContext &gctx, const Identifier &hitId) const
Definition: MuonDetectorNavTest.cxx:72
ActsTrk::MuonDetectorNavTest::m_matchedPropFraction
MuonVal::ScalarBranch< float > & m_matchedPropFraction
Definition: MuonDetectorNavTest.h:106
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:55
ActsTrk::MuonDetectorNavTest::m_propLength
MuonVal::ScalarBranch< float > & m_propLength
Definition: MuonDetectorNavTest.h:103
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer >
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
ActsTrk::MuonDetectorNavTest::m_gasGapId
MuonVal::VectorBranch< unsigned short > & m_gasGapId
Definition: MuonDetectorNavTest.h:88
IMuonIdHelperSvc.h
ActsTrk::MuonDetectorNavTest::toGlobalTrf
Amg::Transform3D toGlobalTrf(const ActsGeometryContext &gctx, const Identifier &hitId) const
Definition: MuonDetectorNavTest.cxx:65
ServiceHandle< Muon::IMuonIdHelperSvc >
ActsTrk::MuonDetectorNavTest::m_actsPropLoc
MuonVal::ThreeVectorBranch m_actsPropLoc
Definition: MuonDetectorNavTest.h:95
Identifier
Definition: IdentifierFieldParser.cxx:14