ATLAS Offline Software
Loading...
Searching...
No Matches
GNNTrackFinderTritonTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#pragma once
6
7// System include(s).
8#include <iostream>
9#include <list>
10#include <memory>
11
16
17class MsgStream;
18
19namespace InDet {
27
28class GNNTrackFinderTritonTool : public extends<AthAlgTool, IGNNTrackFinder> {
29 public:
30 using base_class::base_class;
31 virtual StatusCode initialize() override;
32
34 // Main methods for local track finding asked by the IGNNTrackFinder
36
45 virtual StatusCode getTracks(
46 const std::vector<const Trk::SpacePoint*>& spacepoints,
47 std::vector<std::vector<uint32_t> >& tracks,
48 std::unordered_map<int, std::unordered_map<int, float>>* edgeMap = nullptr) const override;
49
50
51 virtual MsgStream& dump(MsgStream& out) const override;
52 virtual std::ostream& dump(std::ostream& out) const override;
53
54
55 private:
56 ToolHandle<AthInfer::IAthInferenceTool> m_gnnTrackingTritonTool{
57 this, "TritonTool", "AthInfer::TritonTool"};
58 ToolHandle<ISpacepointFeatureTool> m_spacepointFeatureTool{
59 this, "SpacepointFeatureTool", "InDet::SpacepointFeatureTool"};
60
61 StringProperty m_featureNames{this, "FeatureNames",
62 "r,phi,z,cluster_x_1,cluster_y_1,cluster_z_1,cluster_x_2,cluster_y_2,cluster_z_2,count_1,charge_count_1,loc_eta_1,loc_phi_1,localDir0_1,localDir1_1,localDir2_1,lengthDir0_1,lengthDir1_1,lengthDir2_1,glob_eta_1,glob_phi_1,eta_angle_1,phi_angle_1,count_2,charge_count_2,loc_eta_2,loc_phi_2,localDir0_2,localDir1_2,localDir2_2,lengthDir0_2,lengthDir1_2,lengthDir2_2,glob_eta_2,glob_phi_2,eta_angle_2,phi_angle_2,eta,cluster_r_1,cluster_phi_1,cluster_eta_1,cluster_r_2,cluster_phi_2,cluster_eta_2",
63 "Feature names for the GNN pipeline"};
64
65 std::vector<std::string> m_featureNamesVec;
66 MsgStream& dumpevent (MsgStream& out) const;
67};
68
69MsgStream& operator << (MsgStream& ,const GNNTrackFinderTritonTool&);
70std::ostream& operator << (std::ostream&,const GNNTrackFinderTritonTool&);
71
72} // namespace InDet
73
InDet::GNNTrackFinderTritonTool is a tool that produces track candidates with graph neural networks-b...
virtual StatusCode getTracks(const std::vector< const Trk::SpacePoint * > &spacepoints, std::vector< std::vector< uint32_t > > &tracks, std::unordered_map< int, std::unordered_map< int, float > > *edgeMap=nullptr) const override
Get track candidates from a list of space points.
MsgStream & dumpevent(MsgStream &out) const
ToolHandle< AthInfer::IAthInferenceTool > m_gnnTrackingTritonTool
std::vector< std::string > m_featureNamesVec
virtual StatusCode initialize() override
ToolHandle< ISpacepointFeatureTool > m_spacepointFeatureTool
Primary Vertex Finder.
MsgStream & operator<<(MsgStream &, const GNNTrackFinderTritonTool &)
-event-from-file