ATLAS Offline Software
Loading...
Searching...
No Matches
NIMatEffUpdator.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// NIMatEffUpdator.cxx, (c) ATLAS Detector software
8
9// class header
11
12// Trk include
15#include "TrkGeometry/Layer.h"
17
18// constructor
19Trk::NIMatEffUpdator::NIMatEffUpdator(const std::string &t, const std::string &n, const IInterface *p) :
20 AthAlgTool(t, n, p) {
21 declareInterface<ITimedMatEffUpdator>(this);
22}
23
24// destructor
26
27// Athena standard methods
28// initialize
29StatusCode
31 ATH_MSG_INFO("initialize()");
32
33 // retrieve the material updator tool
34 if (m_matUpdator.retrieve().isFailure()) {
35 ATH_MSG_FATAL("Could not retrieve " << m_matUpdator);
36 return StatusCode::FAILURE;
37 }
38 ATH_MSG_DEBUG("Successfully retrieved " << m_matUpdator);
39
40
41 return StatusCode::SUCCESS;
42}
43
44// finalize
45StatusCode
47 ATH_MSG_INFO("finalize() successful");
48 return StatusCode::SUCCESS;
49}
50
51std::unique_ptr<Trk::TrackParameters>
53 const Trk::Layer &lay,
54 Trk::TimeLimit & /*timeLim*/,
55 Trk::PathLimit & /*pathLim*/,
56 Trk::GeometrySignature /*geoID*/,
58 Trk::ParticleHypothesis particle) const {
59 return m_matUpdator->update(parm, lay, dir, particle);
60}
61
62// update method
63std::unique_ptr<Trk::TrackParameters>
65 const Trk::TrackParameters &parm,
66 const Trk::MaterialProperties &matprop,
67 double pathCorrection,
71 return m_matUpdator->update(parm, matprop, pathCorrection, dir, particle);
72}
73
74std::unique_ptr<Trk::TrackParameters>
76 const Trk::TrackParameters *parm,
80 return m_matUpdator->update(parm, meff, particle);
81}
#define ATH_MSG_FATAL(x)
#define ATH_MSG_INFO(x)
#define ATH_MSG_DEBUG(x)
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Base Class for a Detector Layer in the Tracking realm.
Definition Layer.h:72
represents the full description of deflection and e-loss of a track in material.
Material with information about thickness of material.
StatusCode initialize()
AlgTool initailize method.
NIMatEffUpdator(const std::string &, const std::string &, const IInterface *)
AlgTool constructor for NIMatEffUpdator.
std::unique_ptr< Trk::TrackParameters > update(const Trk::TrackParameters *parm, const Trk::Layer &sf, Trk::TimeLimit &time, Trk::PathLimit &path, Trk::GeometrySignature geoID, Trk::PropDirection dir=Trk::alongMomentum, Trk::ParticleHypothesis particle=Trk::pion) const
Updator interface (full update for a layer): given track parameters are deleted internally,...
virtual ~NIMatEffUpdator()
Destructor.
StatusCode finalize()
AlgTool finalize method.
ToolHandle< Trk::IMaterialEffectsUpdator > m_matUpdator
rely on MaterialEffectsIUpdator
PropDirection
PropDirection, enum for direction of the propagation.
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.
MaterialUpdateMode
This is a steering enum to force the material update it can be: (1) addNoise (-1) removeNoise Second ...
ParametersBase< TrackParametersDim, Charged > TrackParameters