Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
StaticNavigationEngine.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // StaticNavigationEngine.cxx, (c) ATLAS Detector software
8 
9 // STL
10 #include <sstream>
11 // Trk include
13 
14 // constructor
15 Trk::StaticNavigationEngine::StaticNavigationEngine(const std::string& t, const std::string& n, const IInterface* p)
16 : AthAlgTool(t,n,p)
17 {
18  declareInterface<Trk::INavigationEngine>(this);
19 }
20 
21 // destructor
23 = default;
24 
25 // the interface method initialize
27 {
28  m_sopPrefix = m_sopPrefix_prop;
29  m_sopPostfix = m_sopPostfix_prop;
30 
31  ATH_CHECK( m_trackingGeometryReadKey.initialize(!m_trackingGeometryReadKey.key().empty()) );
32  ATH_CHECK( m_propagationEngine.retrieve());
33  ATH_CHECK( m_materialEffectsEngine.retrieve());
34 
35  EX_MSG_DEBUG("", "initialize", "", "successful" );
36  return StatusCode::SUCCESS;
37 }
38 
39 // the interface method finalize
41 {
42  EX_MSG_DEBUG("", "finalize", "", "successful" );
43  return StatusCode::SUCCESS;
44 }
45 
48 { return resolveBoundaryT<Trk::TrackParameters>(ecCharged,dir); }
49 
52 { return resolveBoundaryT<Trk::NeutralParameters>(ecNeutral,dir); }
53 
56 { return resolvePositionT<Trk::TrackParameters>(ecCharged,dir, noLoop); }
57 
60 { return resolvePositionT<Trk::NeutralParameters>(ecNeutral,dir, noLoop); }
61 
63  std::stringstream msg;
64  msg << "Failed to get conditions data " << m_trackingGeometryReadKey.key() << ".";
65  throw std::runtime_error(msg.str());
66 }
Trk::StaticNavigationEngine::throwFailedToGetTrackingGeomtry
void throwFailedToGetTrackingGeomtry() const
Definition: StaticNavigationEngine.cxx:62
Trk::StaticNavigationEngine::resolveBoundary
virtual ExtrapolationCode resolveBoundary(Trk::ExCellCharged &eCell, PropDirection dir=alongMomentum) const
resolve the boundary situation - for charged particles
Definition: StaticNavigationEngine.cxx:47
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::PropDirection
PropDirection
Definition: PropDirection.h:19
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::StaticNavigationEngine::resolvePosition
virtual ExtrapolationCode resolvePosition(Trk::ExCellCharged &eCell, PropDirection dir=alongMomentum, bool noLoop=false) const
resolve the boundary situation - for charged particles
Definition: StaticNavigationEngine.cxx:55
Trk::ExtrapolationCode
Definition: ExtrapolationCell.h:105
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
beamspotman.dir
string dir
Definition: beamspotman.py:623
Trk::StaticNavigationEngine::finalize
StatusCode finalize()
AlgTool finalize method.
Definition: StaticNavigationEngine.cxx:40
Trk::StaticNavigationEngine::initialize
StatusCode initialize()
AlgTool initialize method.
Definition: StaticNavigationEngine.cxx:26
StaticNavigationEngine.h
EX_MSG_DEBUG
#define EX_MSG_DEBUG(navstep, step, idx, x)
Definition: ExtrapolationMacros.h:13
Trk::StaticNavigationEngine::~StaticNavigationEngine
~StaticNavigationEngine()
Destructor.
Trk::ExtrapolationCell
Definition: ExtrapolationCell.h:231
Trk::StaticNavigationEngine::StaticNavigationEngine
StaticNavigationEngine(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition: StaticNavigationEngine.cxx:15
AthAlgTool
Definition: AthAlgTool.h:26
python.AutoConfigFlags.msg
msg
Definition: AutoConfigFlags.py:7