5#ifndef GNNSeedingTrackMaker_H
6#define GNNSeedingTrackMaker_H
54 virtual StatusCode
execute(
const EventContext& ctx)
const override;
57 virtual bool isClonable()
const override {
return true; };
67 this,
"PixelClusterKey",
"ITkPixelClusters"};
69 this,
"StripClusterKey",
"ITkStripClusters"};
73 this,
"SpacePointsPixelName",
"ITkPixelSpacePoints"};
75 this,
"SpacePointsStripName",
"ITkStripSpacePoints"};
78 this,
"PixelDetElementBoundaryLinks_xk",
79 "ITkPixelDetElementBoundaryLinks_xk",
80 "Key of InDet::SiDetElementBoundaryLinks_xk for Pixel"};
82 this,
"StripDetElementBoundaryLinks_xk",
83 "ITkStripDetElementBoundaryLinks_xk",
84 "Key of InDet::SiDetElementBoundaryLinks_xk for Strip"};
87 this,
"AtlasFieldCacheCondObj",
"fieldCondObj",
88 "Name of the Magnetic Field conditions object key"};
96 this,
"PixelDetElStatus",
"",
"Key of SiDetectorElementStatus for Pixel"};
103 this,
"StripDetElStatus",
"",
"Key of SiDetectorElementStatus for Strip"};
114 "InDet::SiGNNTrackFinderTool",
119 this,
"SeedFitterTool",
"InDet::InDetGNNTracking/InDetSiSeedFitter",
123 this,
"GNNTrackReaderTool",
"InDet::GNNTrackReaderTool",
"Track Reader"};
126 this,
"TrackFitter",
"Trk::GlobalChi2Fitter/InDetTrackFitter",
130 this,
"RIOonTrackTool",
"Trk::RIO_OnTrackCreator/RIO_OnTrackCreator"};
131 PublicToolHandle<Trk::IPatternParametersPropagator>
m_proptool{
132 this,
"PropagatorTool",
"Trk::RungeKuttaPropagator/InDetPropagator"};
134 this,
"UpdatorTool",
"Trk::KalmanUpdator_xk/InDetPatternUpdator"};
137 this,
"BoundaryCheckTool",
"InDet::InDetBoundaryCheckTool",
138 "Boundary checking tool for detector sensitivities"};
140 this,
"PixelSummaryTool",
"PixelConditionsSummaryTool"};
142 this,
"StripSummaryTool",
143 "InDetSCT_ConditionsSummaryTool/StripConditionsSummaryTool",
144 "Tool to retrieve Strip Conditions summary"};
146 this,
"RoadTool",
"InDet::SiDetElementsRoadMaker_xk"};
149 StringProperty
m_fieldmode{
this,
"MagneticFieldMode",
"MapSolenoid",
150 "Mode of magnetic field"};
157 const std::vector<const Trk::SpacePoint*>&,
158 std::vector<const InDet::SiCluster*>&,
159 std::optional<std::reference_wrapper<
160 std::vector<const InDetDD::SiDetectorElement*>>> = std::nullopt);
163 std::vector<const InDetDD::SiDetectorElement*>& DE,
164 std::vector<const InDet::SiDetElementBoundaryLink_xk*>& DEL,
165 const EventContext& ctx)
const;
173 IntegerProperty
m_nclusmin{
this,
"nClustersMin", 6,
"Min number clusters"};
175 "Min number weighted clusters(pix=2 strip=1)"};
176 IntegerProperty
m_nholesmax{
this,
"nHolesMax", 2,
"Max number holes"};
177 IntegerProperty
m_dholesmax{
this,
"nHolesGapMax", 2,
"Max holes gap"};
179 DoubleProperty
m_pTmin{
this,
"pTmin", 500.,
"min pT"};
180 DoubleProperty
m_pTminBrem{
this,
"pTminBrem", 1000.,
"min pT for Brem mode"};
181 DoubleProperty
m_xi2max{
this,
"Xi2max", 9.,
"max Xi2 for updators"};
183 "max Xi2 for clusters"};
184 DoubleProperty
m_xi2maxlink{
this,
"Xi2maxlink", 200.,
"max Xi2 for clusters"};
186 "max Xi2 for multi tracks"};
188 "do multi tracks production"};
char data[hepevt_bytes_allocation_ATLAS]
An algorithm that can be simultaneously executed in multiple threads.
StringProperty m_fieldmode
DoubleProperty m_xi2maxNoAdd
void initializeCombinatorialData(const EventContext &ctx, SiCombinatorialTrackFinderData_xk &data) const
virtual bool isClonable() const override
Make this algorithm clonable.
ToolHandle< Trk::IBoundaryCheckTool > m_boundaryCheckTool
ToolHandle< IGNNTrackReaderTool > m_gnnTrackReader
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< IGNNTrackFinder > m_gnnTrackFinder
SG::ReadCondHandleKey< InDet::SiDetElementBoundaryLinks_xk > m_boundaryPixelKey
ToolHandle< InDet::ISiDetElementsRoadMaker > m_roadmaker
SG::ReadHandleKey< InDet::SiDetectorElementStatus > m_stripDetElStatus
Optional read handle to get status data to test whether a Strip detector element is good.
PublicToolHandle< Trk::IPatternParametersPropagator > m_proptool
SG::ReadHandleKey< InDet::SCT_ClusterContainer > m_stripClusterKey
DoubleProperty m_xi2maxlink
PublicToolHandle< Trk::IRIO_OnTrackCreator > m_riocreator
void getTrackQualityCuts(SiCombinatorialTrackFinderData_xk &data) const
void detectorElementLinks(std::vector< const InDetDD::SiDetectorElement * > &DE, std::vector< const InDet::SiDetElementBoundaryLink_xk * > &DEL, const EventContext &ctx) const
ToolHandle< ISeedFitter > m_seedFitter
GNN-based track finding tool that produces track candidates.
DoubleProperty m_xi2multitracks
DoubleProperty m_pTminBrem
SG::ReadCondHandleKey< InDet::SiDetElementBoundaryLinks_xk > m_boundaryStripKey
ToolHandle< Trk::ITrackFitter > m_trackFitter
Track Fitter.
IntegerProperty m_nwclusmin
SG::ReadHandleKey< InDet::PixelClusterContainer > m_pixelClusterKey
IntegerProperty m_dholesmax
IntegerProperty m_nclusmin
IntegerProperty m_doMultiTracksProd
static bool spacePointsToClusters(const std::vector< const Trk::SpacePoint * > &, std::vector< const InDet::SiCluster * > &, std::optional< std::reference_wrapper< std::vector< const InDetDD::SiDetectorElement * > > >=std::nullopt)
IntegerProperty m_nholesmax
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCondObjInputKey
Trk::MagneticFieldProperties m_fieldprop
Magnetic field properties.
ToolHandle< IInDetConditionsTool > m_stripCondSummaryTool
PublicToolHandle< Trk::IPatternParametersUpdator > m_updatortool
SG::ReadHandleKey< SpacePointContainer > m_SpacePointsStripKey
GNNSeedingTrackMaker(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< SpacePointContainer > m_SpacePointsPixelKey
virtual StatusCode initialize() override
SG::ReadHandleKey< InDet::SiDetectorElementStatus > m_pixelDetElStatus
Optional read handle to get status data to test whether a pixel detector element is good.
SG::WriteHandleKey< TrackCollection > m_outputTracksKey
ToolHandle< IInDetConditionsTool > m_pixelCondSummaryTool
InDet::SiCombinatorialTrackFinderData_xk holds event dependent data used by SiCombinatorialTrackFinde...
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.
magnetic field properties to steer the behavior of the extrapolation