|
ATLAS Offline Software
|
Go to the documentation of this file.
12 #ifndef TRKPARTICLECREATOR_PARTICLECALOEXTENSIONTOOL_H
13 #define TRKPARTICLECREATOR_PARTICLECALOEXTENSIONTOOL_H
15 #include "GaudiKernel/ServiceHandle.h"
16 #include "GaudiKernel/ToolHandle.h"
64 const EventContext& ctx,
68 const EventContext& ctx,
77 const EventContext& ctx,
83 const EventContext& ctx,
96 const EventContext& ctx,
105 const EventContext& ctx,
117 const EventContext& ctx,
120 const EventContext& ctx,
123 const EventContext& ctx,
131 "CaloSurfaceBuilder",
133 "Tool to build calorimeter layer surfaces"
137 this,
"ParticleType",
"muon",
138 "The particle type used during extrapolation when not passed via the "
140 ": muon, pion, nonInteracting"};
145 "Start from Perigee" };
151 "ExtrapolationDetectorID",
153 "The detector this tool should extrapolate through. Expects a "
154 "Trk::GeometrySignature enum value."
158 ToolHandle<GenericMonitoringTool>
m_monTool{
this,
"MonTool",
"",
"Monitoring tool"};
virtual ~ParticleCaloExtensionTool()
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
virtual std::unique_ptr< Trk::CaloExtension > caloExtension(const EventContext &ctx, const xAOD::IParticle &particle) const override final
Method returning the calo layers crossed by the IParticle track or the IParticle itself if it is neut...
Tracking class to hold the extrapolation from a particle from the ID to the muon system (or the other...
ParticleHypothesis m_particleStrategy
provides Calorimeter Sampling enum
ToolHandle< Trk::IExtrapolator > m_extrapolator
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
bool const RAWDATA *ch2 const
Gaudi::Property< unsigned int > m_extrapolDetectorID
ToolHandle< GenericMonitoringTool > m_monTool
Monitoring tool for recording histograms of the alg in action.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
virtual StatusCode caloExtensionCollection(const EventContext &ctx, const xAOD::IParticleContainer &particles, const std::vector< bool > &mask, CaloExtensionCollection &caloextensions) const override final
Method that can be used by algorithms that : A.
const AtlasDetectorID * m_detID
ToolHandle< ICaloSurfaceBuilder > m_calosurf
Tool to build calorimeter layer surfaces.
::StatusCode StatusCode
StatusCode definition for legacy code.
ParticleCaloExtensionTool(const std::string &, const std::string &, const IInterface *)
virtual StatusCode initialize() override final
NeutralParticle_v1 NeutralParticle
Reference the current persistent version:
Header file to be included by clients of the Monitored infrastructure.
Interface for extending Particles with calo intersections.
Gaudi::Property< bool > m_startFromPerigee
Ensure that the ATLAS eigen extensions are properly loaded.
std::unordered_map< size_t, std::unique_ptr< Trk::CaloExtension > > Cache
virtual StatusCode finalize() override final
std::vector< std::unique_ptr< Trk::Surface > > caloSurfacesFromLayers(const std::vector< CaloSampling::CaloSample > &clusterLayers, double eta, const CaloDetDescrManager &caloDD) const override final
Method returning a vector of calo surfaces give calo layers/samplings.
This class provides the client interface for accessing the detector description information common to...
virtual std::vector< std::pair< CaloSampling::CaloSample, std::unique_ptr< const Trk::TrackParameters > > > surfaceCaloExtension(const EventContext &ctx, const TrackParameters &startPars, const std::vector< CaloSampling::CaloSample > &clusterLayers, const std::vector< std::unique_ptr< Trk::Surface >> &caloSurfaces, ParticleHypothesis particleType) const override final
Method returning a vector of the Track Parameters at layers/samplings.
Gaudi::Property< std::string > m_particleTypeName
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
virtual std::vector< std::pair< CaloSampling::CaloSample, std::unique_ptr< const Trk::TrackParameters > > > layersCaloExtension(const EventContext &ctx, const TrackParameters &startPars, const std::vector< CaloSampling::CaloSample > &clusterLayers, double eta, const CaloDetDescrManager &caloDD, ParticleHypothesis particleType) const override final
Method returning a vector of the Track Parameters at layers/samplings.