5#ifndef ACTSTRACKRECONSTRUCTION_TRACKFINDINGGNNALG_H
6#define ACTSTRACKRECONSTRUCTION_TRACKFINDINGGNNALG_H
15#include "GaudiKernel/ToolHandle.h"
25#include "Acts/EventData/ProxyAccessor.hpp"
26#include "Acts/EventData/TrackContainer.hpp"
27#include "Acts/EventData/VectorTrackContainer.hpp"
42#include "GaudiKernel/EventContext.h"
72 virtual StatusCode
execute(
const EventContext &ctx)
const override;
76 ToolHandle<GenericMonitoringTool>
m_monTool{
this,
"MonTool",
"",
79 this,
"ExtrapolationTool",
""};
81 this,
"TrackingGeometryTool",
""};
83 this,
"TrackParamsEstimationTool",
"",
"Track Param Estimation from Seeds"};
85 this,
"FitterTool",
"",
"Track fitting tool"};
96 "ITkPixelSpacePoints"};
99 this,
"xAODInputSpacePointsContainerKey",
"ITkStripSpacePoints"};
102 this,
"xAODInputSpacePointsOverlapContainerKey",
103 "ITkStripOverlapSpacePoints"};
106 this,
"ACTSTracksLocation",
"",
107 "Output track collection (ActsTrk variant)"};
111 this,
"maxPropagationStep", 1000,
112 "Maximum number of steps for one propagate call"};
115 "Path to the module map files"};
117 Gaudi::Property<std::string>
m_gnnPath{
this,
"gnnPath",
"",
118 "Path to the gnn file"};
121 this,
"usePhiOverlapSps",
false,
"Wether to use phi overlap spacepoints"};
124 this,
"maxGpuInstances", 1,
125 "Number of events that can be on GPU in parallel"};
128 this,
"numTrtContexts", 1,
"Number of TensorRT contexts to allocate"};
131 this,
"varianceInflation", 1.0,
132 "Factor that is multiplied to all initial variances"};
135 this,
"tightSeeds",
false,
136 "Use tight seeds instead of spread seeds for param estimation"};
139 "Edge cut to apply after the GNN"};
142 this,
"minCandidateMeasurements", 7,
143 "Minimum number of spacepoints to cut for in the GNN candidates"};
146 this,
"minDeltaR", 10.0,
147 "Minimum difference in R to build the initial parameters"};
150 this,
"relaxCentralHoleSel",
false,
"Relax holes from 2 to 4 in central region"};
153 this,
"relaxMeasurementSel",
true,
"Apply 7,7,7 measurement sel"};
156 this,
"offlineZ0Sel",
false,
"Apply offline z0 selection"};
159 "CUDA device index for GNN inference"};
173 mutable std::optional<std::counting_semaphore<>> m_gpuInstanceCount
Exception-safe IChronoSvc caller.
This is an Identifier helper class for the SCT subdetector.
Property holding a SG store/key/clid from which a WriteHandle is made.
Gaudi::Property< std::string > m_moduleMapPath
Gaudi::Property< std::string > m_gnnPath
Gaudi::Property< bool > m_relaxCentralHoleSel
std::unique_ptr< const Acts::Logger > m_logger
logging instance
const SCT_ID * m_stripIdHelper
ToolHandle< ActsTrk::IFitterTool > m_fitterTool
Acts::TrackSelector::EtaBinnedConfig m_trackSelectorConfig
Gaudi::Property< unsigned int > m_numTrtContexts
ToolHandle< ActsTrk::ITrackParamsEstimationTool > m_paramEstimationTool
std::optional< std::counting_semaphore<> > m_gpuInstanceCount ATLAS_THREAD_SAFE
Gaudi::Property< double > m_edgeCut
virtual StatusCode initialize() override
Gaudi::Property< bool > m_relaxMeasurementSel
std::unique_ptr< ActsPlugins::GnnPipeline > m_gnnPipeline
SG::ReadHandleKey< xAOD::SpacePointContainer > m_xaodStripSpacePointOverlapContainerKey
SG::WriteHandleKey< ActsTrk::TrackContainer > m_trackContainerKey
Gaudi::Property< bool > m_offlineZ0Sel
virtual StatusCode execute(const EventContext &ctx) const override
detail::OnTrackCalibrator< ActsTrk::MutableTrackStateBackend > m_uncalibMeasCalibrator
PublicToolHandle< ITrackingGeometryTool > m_trackingGeometryTool
SG::ReadHandleKey< xAOD::SpacePointContainer > m_xaodPixelSpacePointContainerKey
const Acts::Logger & logger() const
Private access to the logger.
Gaudi::Property< double > m_varianceInflation
Gaudi::Property< unsigned int > m_minCandidateMeasurements
TrackFindingGNNAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< bool > m_tightSeeds
ToolHandle< ActsTrk::IExtrapolationTool > m_extrapolationTool
Gaudi::Property< unsigned int > m_maxGpuInstances
Gaudi::Property< double > m_minDeltaR
ServiceHandle< IChronoStatSvc > m_chronoSvc
Gaudi::Property< bool > m_usePhiOverlapSps
SG::ReadHandleKey< xAOD::SpacePointContainer > m_xaodStripSpacePointContainerKey
detail::xAODUncalibMeasSurfAcc m_uncalibMeasSurfAccessor
ToolHandle< GenericMonitoringTool > m_monTool
Gaudi::Property< unsigned int > m_maxPropagationStep
virtual ~TrackFindingGNNAlg()
Gaudi::Property< int > m_cudaDeviceIndex
Inner detector / ITk calibrator implementation used in the KalmanFilterTool.
Helper class to access the Acts::surface associated with an Uncalibrated xAOD measurement.
An algorithm that can be simultaneously executed in multiple threads.
This is an Identifier helper class for the SCT subdetector.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...