5#ifndef INDETPHYSVALMONITORING_InDetPhysHitDecoratorAlg_H
6#define INDETPHYSVALMONITORING_InDetPhysHitDecoratorAlg_H
17#include "GaudiKernel/ToolHandle.h"
20#include "GaudiKernel/EventContext.h"
47 virtual StatusCode
finalize()
override;
48 virtual StatusCode
execute(
const EventContext &ctx)
const override;
58 {
this,
"InDetTrackHoleSearchTool",
"InDet::InDetTrackHoleSearchTool"};
60 {
this,
"Updator",
"Trk::KalmanUpdator/TrkKalmanUpdator",
61 "Tool handle of updator for unbiased states"};
63 {
this,
"ResidualPullCalculator",
64 "Trk::ResidualPullCalculator/ResidualPullCalculator"};
65 ToolHandle<ISiLorentzAngleTool>
m_lorentzAngleTool{
this,
"LorentzAngleTool",
"SiLorentzAngleTool",
"Tool to retrieve Lorentz angle"};
97 {
this,
"TrackParticleContainerName",
"InDetTrackParticles",
""};
99 std::vector<SG::WriteDecorHandleKey<xAOD::TrackParticleContainer> >
m_intDecor;
100 std::vector<SG::WriteDecorHandleKey<xAOD::TrackParticleContainer> >
m_uint64Decor;
101 std::vector<SG::WriteDecorHandleKey<xAOD::TrackParticleContainer> >
m_floatDecor;
104 {
this,
"Prefix",
"",
"Decoration prefix to avoid clashes."};
118 bool &isUnbiased)
const;
Handle class for adding a decoration to an object.
An algorithm that can be simultaneously executed in multiple threads.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
bool decideDetectorRegion(const Identifier &id, Subdetector &det, Region &r, int &layer) const
bool decorateTrack(const xAOD::TrackParticle &particle, std::vector< SG::WriteDecorHandle< xAOD::TrackParticleContainer, std::vector< float > > > &float_decor, std::vector< SG::WriteDecorHandle< xAOD::TrackParticleContainer, std::vector< int > > > &int_decor, std::vector< SG::WriteDecorHandle< xAOD::TrackParticleContainer, std::vector< uint64_t > > > &uint64_decor) const
InDetPhysHitDecoratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< std::string > m_prefix
ToolHandle< Trk::ITrackHoleSearchTool > m_holeSearchTool
const Trk::TrackParameters * getUnbiasedTrackParameters(const Trk::TrackParameters *trkParameters, const Trk::MeasurementBase *measurement, bool &isUnbiased) const
virtual ~InDetPhysHitDecoratorAlg()
virtual StatusCode initialize() override
const AtlasDetectorID * m_idHelper
ToolHandle< Trk::IResidualPullCalculator > m_residualPullCalculator
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > m_intDecor
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trkParticleName
ToolHandle< ISiLorentzAngleTool > m_lorentzAngleTool
ToolHandle< Trk::IUpdator > m_updatorHandle
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > m_floatDecor
std::atomic< bool > m_alreadyWarned
std::vector< SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > > m_uint64Decor
virtual StatusCode execute(const EventContext &ctx) const override
const PixelID * m_pixelID
virtual StatusCode finalize() override
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
Property holding a SG store/key/clid from which a ReadHandle is made.
Handle class for adding a decoration to an object.
This is an Identifier helper class for the TRT subdetector.
This class is the pure abstract base class for all fittable tracking measurements.
ParametersBase< TrackParametersDim, Charged > TrackParameters
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".