ATLAS Offline Software
Loading...
Searching...
No Matches
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
15Trk::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{
30
32 ATH_CHECK( m_propagationEngine.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
49
53
57
61
63 std::stringstream msg;
64 msg << "Failed to get conditions data " << m_trackingGeometryReadKey.key() << ".";
65 throw std::runtime_error(msg.str());
66}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define EX_MSG_DEBUG(navstep, step, idx, x)
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
MsgStream & msg() const
std::string m_sopPrefix
< SCREEN output formatting (SOP) - unify amongst extrapolation engines
std::string m_sopPostfix
prefix for screen output
SG::ReadCondHandleKey< TrackingGeometry > m_trackingGeometryReadKey
retrieve TrackingGeometry
ExtrapolationCode resolveBoundaryT(ExtrapolationCell< T > &eCell, PropDirection dir=alongMomentum) const
resolve the boundary situation
virtual ExtrapolationCode resolvePosition(Trk::ExCellCharged &eCell, PropDirection dir=alongMomentum, bool noLoop=false) const
resolve the boundary situation - for charged particles
~StaticNavigationEngine()
Destructor.
StatusCode finalize()
AlgTool finalize method.
virtual ExtrapolationCode resolveBoundary(Trk::ExCellCharged &eCell, PropDirection dir=alongMomentum) const
resolve the boundary situation - for charged particles
StatusCode initialize()
AlgTool initialize method.
StaticNavigationEngine(const std::string &, const std::string &, const IInterface *)
Constructor.
ToolHandle< IMaterialEffectsEngine > m_materialEffectsEngine
the material effects updated
ExtrapolationCode resolvePositionT(ExtrapolationCell< T > &eCell, PropDirection dir=alongMomentum, bool noLoop=false) const
resolve position
ToolHandle< IPropagationEngine > m_propagationEngine
the used propagation engine
PropDirection
PropDirection, enum for direction of the propagation.
ExtrapolationCell< TrackParameters > ExCellCharged
ExtrapolationCell< NeutralParameters > ExCellNeutral