ATLAS Offline Software
StaticEngine.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // StaticEngine.cxx, (c) ATLAS Detector software
8 
9 // STL
10 #include <sstream>
11 // Trk include
13 
14 // constructor
15 Trk::StaticEngine::StaticEngine(const std::string& t, const std::string& n, const IInterface* p)
16 : AthAlgTool(t,n,p)
17 {
18  declareInterface<Trk::IExtrapolationEngine>(this);
19  // steering of the screen outoput (SOP)
20  declareProperty("OutputPrefix" , m_sopPrefix);
21  declareProperty("OutputPostfix" , m_sopPostfix);
22 }
23 
24 // destructor
26 = default;
27 
28 
29 // the interface method initialize
31 {
32  if (m_propagationEngine.retrieve().isFailure()){
33  EX_MSG_FATAL("", "initialize", "", "failed to retrieve propagation engine '"<< m_propagationEngine << "'. Aborting." );
34  return StatusCode::FAILURE;
35  } else
36  EX_MSG_DEBUG("", "initialize", "", "successfully propagation engine '" << m_propagationEngine << "'." );
37 
38  if (m_navigationEngine.retrieve().isFailure()){
39  EX_MSG_FATAL("", "initialize", "", "failed to retrieve navigation engine '"<< m_navigationEngine << "'. Aborting." );
40  return StatusCode::FAILURE;
41  } else
42  EX_MSG_DEBUG("", "initialize", "", "successfully retrieved '" << m_navigationEngine << "'." );
43 
44  if (m_materialEffectsEngine.retrieve().isFailure()){
45  EX_MSG_FATAL("", "initialize", "", "failed to retrieve material effect engine '"<< m_materialEffectsEngine << "'. Aborting." );
46  return StatusCode::FAILURE;
47  } else
48  EX_MSG_DEBUG("", "initialize", "", "successfully retrieved '" << m_materialEffectsEngine << "'." );
49 
50  EX_MSG_DEBUG("", "initialize", "", "successful." );
51  return StatusCode::SUCCESS;
52 }
53 
54 // the interface method finalize
56 {
57  EX_MSG_DEBUG("", "finalize", "", "successful." );
58  return StatusCode::SUCCESS;
59 }
60 
61 
64  const Surface* sf,
65  const BoundaryCheck& bcheck) const
66 { return extrapolateT<TrackParameters>(ecCharged,sf,ecCharged.propDirection,bcheck); }
67 
68 
71  const Surface* sf,
72  const BoundaryCheck& bcheck) const
73 { return extrapolateT<NeutralParameters>(ecNeutral,sf,ecNeutral.propDirection,bcheck); }
Trk::StaticEngine::~StaticEngine
virtual ~StaticEngine()
Destructor.
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
Trk::ExtrapolationCell::propDirection
PropDirection propDirection
this is the propagation direction
Definition: ExtrapolationCell.h:260
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::StaticEngine::initialize
virtual StatusCode initialize() override
AlgTool initialize method.
Definition: StaticEngine.cxx:30
Trk::IExtrapolationEngine::m_sopPostfix
std::string m_sopPostfix
prefix for screen output
Definition: IExtrapolationEngine.h:64
Trk::IExtrapolationEngine::m_sopPrefix
std::string m_sopPrefix
< SCREEN output formatting (SOP) - unify amongst extrapolation engines
Definition: IExtrapolationEngine.h:63
EX_MSG_FATAL
#define EX_MSG_FATAL(navstep, step, idx, x)
Definition: ExtrapolationMacros.h:16
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::ExtrapolationCode
Definition: ExtrapolationCell.h:105
Trk::StaticEngine::StaticEngine
StaticEngine(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition: StaticEngine.cxx:15
StaticEngine.h
EX_MSG_DEBUG
#define EX_MSG_DEBUG(navstep, step, idx, x)
Definition: ExtrapolationMacros.h:13
Trk::StaticEngine::finalize
virtual StatusCode finalize() override
AlgTool finalize method.
Definition: StaticEngine.cxx:55
Trk::ExtrapolationCell
Definition: ExtrapolationCell.h:231
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
Trk::StaticEngine::extrapolate
virtual ExtrapolationCode extrapolate(ExCellCharged &ecCharged, const Surface *sf=0, const BoundaryCheck &bcheck=true) const override
charged extrapolation - public interface
Definition: StaticEngine.cxx:63
Trk::BoundaryCheck
Definition: BoundaryCheck.h:51
AthAlgTool
Definition: AthAlgTool.h:26
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75