ATLAS Offline Software
Loading...
Searching...
No Matches
FPGATrackSimGNNRootOutputTool Class Reference

#include <FPGATrackSimGNNRootOutputTool.h>

Inheritance diagram for FPGATrackSimGNNRootOutputTool:

Public Member Functions

 FPGATrackSimGNNRootOutputTool (const std::string &, const std::string &, const IInterface *)
virtual StatusCode initialize () override
StatusCode fillTree (const std::vector< std::shared_ptr< const FPGATrackSimHit > > &hits, const std::vector< std::shared_ptr< FPGATrackSimGNNHit > > &gnn_hits, const std::vector< std::shared_ptr< FPGATrackSimGNNEdge > > &edges, const std::vector< std::shared_ptr< const FPGATrackSimRoad > > &roads)
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

StatusCode bookTree ()
void resetVectors ()
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

ServiceHandle< ITHistSvc > m_tHistSvc {this, "THistSvc", "THistSvc"}
Gaudi::Property< std::string > m_region { this, "OutputRegion", "", "region ID"}
TTree * m_hit_tree = nullptr
std::vector< unsigned int > m_hit_id {}
std::vector< unsigned int > m_hit_module_id {}
std::vector< float > m_hit_x {}
std::vector< float > m_hit_y {}
std::vector< float > m_hit_z {}
std::vector< float > m_hit_r {}
std::vector< float > m_hit_phi {}
std::vector< bool > m_hit_isPixel {}
std::vector< bool > m_hit_isStrip {}
std::vector< int > m_hit_hitType {}
std::vector< HepMcParticleLink::barcode_typem_hit_uniqueID {}
std::vector< long > m_hit_eventIndex {}
std::vector< float > m_hit_cluster_x {}
std::vector< float > m_hit_cluster_y {}
std::vector< float > m_hit_cluster_z {}
TTree * m_GNNHit_tree = nullptr
std::vector< unsigned int > m_GNNHit_id {}
std::vector< unsigned int > m_GNNHit_module_id {}
std::vector< int > m_GNNHit_road_id {}
std::vector< float > m_GNNHit_x {}
std::vector< float > m_GNNHit_y {}
std::vector< float > m_GNNHit_z {}
std::vector< float > m_GNNHit_r {}
std::vector< float > m_GNNHit_phi {}
std::vector< float > m_GNNHit_eta {}
std::vector< float > m_GNNHit_cluster_x_1 {}
std::vector< float > m_GNNHit_cluster_y_1 {}
std::vector< float > m_GNNHit_cluster_z_1 {}
std::vector< float > m_GNNHit_cluster_r_1 {}
std::vector< float > m_GNNHit_cluster_phi_1 {}
std::vector< float > m_GNNHit_cluster_eta_1 {}
std::vector< float > m_GNNHit_cluster_x_2 {}
std::vector< float > m_GNNHit_cluster_y_2 {}
std::vector< float > m_GNNHit_cluster_z_2 {}
std::vector< float > m_GNNHit_cluster_r_2 {}
std::vector< float > m_GNNHit_cluster_phi_2 {}
std::vector< float > m_GNNHit_cluster_eta_2 {}
TTree * m_GNNEdge_tree = nullptr
std::vector< unsigned int > m_GNNEdge_index_1 {}
std::vector< unsigned int > m_GNNEdge_index_2 {}
std::vector< float > m_GNNEdge_dR {}
std::vector< float > m_GNNEdge_dPhi {}
std::vector< float > m_GNNEdge_dZ {}
std::vector< float > m_GNNEdge_dEta {}
std::vector< float > m_GNNEdge_phiSlope {}
std::vector< float > m_GNNEdge_rPhiSlope {}
std::vector< float > m_GNNEdge_score {}
TTree * m_road_tree = nullptr
std::vector< int > m_road_id {}
std::vector< size_t > m_road_nHits {}
std::vector< std::vector< size_t > > m_road_nHits_layer {}
std::vector< size_t > m_road_nLayers {}
std::vector< std::vector< std::vector< HepMcParticleLink::barcode_type > > > m_road_hit_uniqueID {}
std::vector< std::vector< std::vector< HepMcParticleLink::barcode_type > > > m_road_hit_barcode {}
std::vector< std::vector< std::vector< long > > > m_road_hit_eventIndex {}
std::vector< std::vector< std::vector< float > > > m_road_hit_z {}
std::vector< std::vector< std::vector< float > > > m_road_hit_r {}
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

Definition at line 33 of file FPGATrackSimGNNRootOutputTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ FPGATrackSimGNNRootOutputTool()

FPGATrackSimGNNRootOutputTool::FPGATrackSimGNNRootOutputTool ( const std::string & algname,
const std::string & name,
const IInterface * ifc )

Definition at line 8 of file FPGATrackSimGNNRootOutputTool.cxx.

8 :
9 AthAlgTool(algname, name, ifc)
10{
11}
AthAlgTool()
Default constructor:

Member Function Documentation

◆ bookTree()

StatusCode FPGATrackSimGNNRootOutputTool::bookTree ( )
private

Definition at line 23 of file FPGATrackSimGNNRootOutputTool.cxx.

24{
25 std::string hittree_str = "FPGATrackSimHit_reg" + m_region.value();
26 m_hit_tree = new TTree(hittree_str.c_str(), hittree_str.c_str());
27 m_hit_tree->Branch("hit_id",&m_hit_id);
28 m_hit_tree->Branch("hit_module_id",&m_hit_module_id);
29 m_hit_tree->Branch("hit_x",&m_hit_x);
30 m_hit_tree->Branch("hit_y",&m_hit_y);
31 m_hit_tree->Branch("hit_z",&m_hit_z);
32 m_hit_tree->Branch("hit_r",&m_hit_r);
33 m_hit_tree->Branch("hit_phi",&m_hit_phi);
34 m_hit_tree->Branch("hit_isPixel",&m_hit_isPixel);
35 m_hit_tree->Branch("hit_isStrip",&m_hit_isStrip);
36 m_hit_tree->Branch("hit_hitType",&m_hit_hitType);
37 m_hit_tree->Branch("hit_uniqueID",&m_hit_uniqueID);
38 m_hit_tree->Branch("hit_eventIndex",&m_hit_eventIndex);
39 m_hit_tree->Branch("hit_cluster_x",&m_hit_cluster_x);
40 m_hit_tree->Branch("hit_cluster_y",&m_hit_cluster_y);
41 m_hit_tree->Branch("hit_cluster_z",&m_hit_cluster_z);
42
43 std::string GNNhittree_str = "FPGATrackSimGNNHit_reg" + m_region.value();
44 m_GNNHit_tree = new TTree(GNNhittree_str.c_str(), GNNhittree_str.c_str());
45 m_GNNHit_tree->Branch("hit_id",&m_GNNHit_id);
46 m_GNNHit_tree->Branch("hit_module_id",&m_GNNHit_module_id);
47 m_GNNHit_tree->Branch("hit_road_id",&m_GNNHit_road_id);
48 m_GNNHit_tree->Branch("hit_x",&m_GNNHit_x);
49 m_GNNHit_tree->Branch("hit_y",&m_GNNHit_y);
50 m_GNNHit_tree->Branch("hit_z",&m_GNNHit_z);
51 m_GNNHit_tree->Branch("hit_r",&m_GNNHit_r);
52 m_GNNHit_tree->Branch("hit_phi",&m_GNNHit_phi);
53 m_GNNHit_tree->Branch("hit_eta",&m_GNNHit_eta);
54 m_GNNHit_tree->Branch("hit_cluster_x_1",&m_GNNHit_cluster_x_1);
55 m_GNNHit_tree->Branch("hit_cluster_y_1",&m_GNNHit_cluster_y_1);
56 m_GNNHit_tree->Branch("hit_cluster_z_1",&m_GNNHit_cluster_z_1);
57 m_GNNHit_tree->Branch("hit_cluster_r_1",&m_GNNHit_cluster_r_1);
58 m_GNNHit_tree->Branch("hit_cluster_phi_1",&m_GNNHit_cluster_phi_1);
59 m_GNNHit_tree->Branch("hit_cluster_eta_1",&m_GNNHit_cluster_eta_1);
60 m_GNNHit_tree->Branch("hit_cluster_x_2",&m_GNNHit_cluster_x_2);
61 m_GNNHit_tree->Branch("hit_cluster_y_2",&m_GNNHit_cluster_y_2);
62 m_GNNHit_tree->Branch("hit_cluster_z_2",&m_GNNHit_cluster_z_2);
63 m_GNNHit_tree->Branch("hit_cluster_r_2",&m_GNNHit_cluster_r_2);
64 m_GNNHit_tree->Branch("hit_cluster_phi_2",&m_GNNHit_cluster_phi_2);
65 m_GNNHit_tree->Branch("hit_cluster_eta_2",&m_GNNHit_cluster_eta_2);
66
67 std::string GNNedgetree_str = "FPGATrackSimGNNEdge_reg" + m_region.value();
68 m_GNNEdge_tree = new TTree(GNNedgetree_str.c_str(), GNNedgetree_str.c_str());
69 m_GNNEdge_tree->Branch("edge_index_1",&m_GNNEdge_index_1);
70 m_GNNEdge_tree->Branch("edge_index_2",&m_GNNEdge_index_2);
71 m_GNNEdge_tree->Branch("edge_dr",&m_GNNEdge_dR);
72 m_GNNEdge_tree->Branch("edge_dphi",&m_GNNEdge_dPhi);
73 m_GNNEdge_tree->Branch("edge_dz",&m_GNNEdge_dZ);
74 m_GNNEdge_tree->Branch("edge_deta",&m_GNNEdge_dEta);
75 m_GNNEdge_tree->Branch("edge_phislope",&m_GNNEdge_phiSlope);
76 m_GNNEdge_tree->Branch("edge_rphislope",&m_GNNEdge_rPhiSlope);
77 m_GNNEdge_tree->Branch("edge_score",&m_GNNEdge_score);
78
79 std::string roadtree_str = "FPGATrackSimRoad_reg" + m_region.value();
80 m_road_tree = new TTree(roadtree_str.c_str(), roadtree_str.c_str());
81 m_road_tree->Branch("road_id",&m_road_id);
82 m_road_tree->Branch("road_nHits",&m_road_nHits);
83 m_road_tree->Branch("road_nHits_layer",&m_road_nHits_layer);
84 m_road_tree->Branch("road_nLayers",&m_road_nLayers);
85 m_road_tree->Branch("road_hit_uniqueID",&m_road_hit_uniqueID);
86 m_road_tree->Branch("road_hit_barcode",&m_road_hit_barcode);
87 m_road_tree->Branch("road_hit_eventIndex",&m_road_hit_eventIndex);
88 m_road_tree->Branch("road_hit_z",&m_road_hit_z);
89 m_road_tree->Branch("road_hit_r",&m_road_hit_r);
90
91 ATH_CHECK(m_tHistSvc->regTree(Form("/TRIGFPGATrackSimGNNOUTPUT/%s",m_hit_tree->GetName()), m_hit_tree));
92 ATH_CHECK(m_tHistSvc->regTree(Form("/TRIGFPGATrackSimGNNOUTPUT/%s",m_GNNHit_tree->GetName()), m_GNNHit_tree));
93 ATH_CHECK(m_tHistSvc->regTree(Form("/TRIGFPGATrackSimGNNOUTPUT/%s",m_GNNEdge_tree->GetName()), m_GNNEdge_tree));
94 ATH_CHECK(m_tHistSvc->regTree(Form("/TRIGFPGATrackSimGNNOUTPUT/%s",m_road_tree->GetName()), m_road_tree));
95
96 return StatusCode::SUCCESS;
97}
#define ATH_CHECK
Evaluate an expression and check for errors.
std::vector< unsigned int > m_GNNEdge_index_1
std::vector< std::vector< std::vector< float > > > m_road_hit_r
std::vector< HepMcParticleLink::barcode_type > m_hit_uniqueID
std::vector< std::vector< std::vector< float > > > m_road_hit_z
std::vector< unsigned int > m_GNNEdge_index_2
Gaudi::Property< std::string > m_region
std::vector< std::vector< std::vector< long > > > m_road_hit_eventIndex
std::vector< std::vector< size_t > > m_road_nHits_layer
std::vector< unsigned int > m_GNNHit_module_id
std::vector< std::vector< std::vector< HepMcParticleLink::barcode_type > > > m_road_hit_uniqueID
std::vector< std::vector< std::vector< HepMcParticleLink::barcode_type > > > m_road_hit_barcode
std::vector< unsigned int > m_hit_module_id

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ fillTree()

StatusCode FPGATrackSimGNNRootOutputTool::fillTree ( const std::vector< std::shared_ptr< const FPGATrackSimHit > > & hits,
const std::vector< std::shared_ptr< FPGATrackSimGNNHit > > & gnn_hits,
const std::vector< std::shared_ptr< FPGATrackSimGNNEdge > > & edges,
const std::vector< std::shared_ptr< const FPGATrackSimRoad > > & roads )

Definition at line 99 of file FPGATrackSimGNNRootOutputTool.cxx.

103{
104 // fill the FPGATrackSimHits
105 int hit_count = 0;
106 for (const auto& hit : hits) {
107 m_hit_id.push_back(hit_count);
108 m_hit_module_id.push_back(hit->getIdentifier());
109 m_hit_x.push_back(hit->getX());
110 m_hit_y.push_back(hit->getY());
111 m_hit_z.push_back(hit->getZ());
112 m_hit_r.push_back(hit->getR());
113 m_hit_phi.push_back(hit->getGPhi());
114 m_hit_isPixel.push_back(hit->isPixel());
115 m_hit_isStrip.push_back(hit->isStrip());
116 m_hit_hitType.push_back(static_cast<int>(hit->getHitType()));
117 m_hit_uniqueID.push_back(hit->getUniqueID());
118 m_hit_eventIndex.push_back(hit->getEventIndex());
119 m_hit_cluster_x.push_back(hit->getOriginalHit().getX());
120 m_hit_cluster_y.push_back(hit->getOriginalHit().getY());
121 m_hit_cluster_z.push_back(hit->getOriginalHit().getZ());
122 hit_count++;
123 }
124 m_hit_tree->Fill();
125
126 // fill the FPGATrackSimGNNHits
127 for (const auto& hit : gnn_hits) {
128 m_GNNHit_id.push_back(hit->getHitID());
129 m_GNNHit_module_id.push_back(hit->getIdentifier());
130 m_GNNHit_road_id.push_back(hit->getRoadID());
131 m_GNNHit_x.push_back(hit->getX());
132 m_GNNHit_y.push_back(hit->getY());
133 m_GNNHit_z.push_back(hit->getZ());
134 m_GNNHit_r.push_back(hit->getR());
135 m_GNNHit_phi.push_back(hit->getPhi());
136 m_GNNHit_eta.push_back(hit->getEta());
137 m_GNNHit_cluster_x_1.push_back(hit->getCluster1X());
138 m_GNNHit_cluster_y_1.push_back(hit->getCluster1Y());
139 m_GNNHit_cluster_z_1.push_back(hit->getCluster1Z());
140 m_GNNHit_cluster_r_1.push_back(hit->getCluster1R());
141 m_GNNHit_cluster_phi_1.push_back(hit->getCluster1Phi());
142 m_GNNHit_cluster_eta_1.push_back(hit->getCluster1Eta());
143 m_GNNHit_cluster_x_2.push_back(hit->getCluster2X());
144 m_GNNHit_cluster_y_2.push_back(hit->getCluster2Y());
145 m_GNNHit_cluster_z_2.push_back(hit->getCluster2Z());
146 m_GNNHit_cluster_r_2.push_back(hit->getCluster2R());
147 m_GNNHit_cluster_phi_2.push_back(hit->getCluster2Phi());
148 m_GNNHit_cluster_eta_2.push_back(hit->getCluster2Eta());
149 }
150 m_GNNHit_tree->Fill();
151
152 // fill the FPGATrackSimGNNEdges
153 for (const auto& edge : edges) {
154 m_GNNEdge_index_1.push_back(edge->getEdgeIndex1());
155 m_GNNEdge_index_2.push_back(edge->getEdgeIndex2());
156 m_GNNEdge_dR.push_back(edge->getEdgeDR());
157 m_GNNEdge_dPhi.push_back(edge->getEdgeDPhi());
158 m_GNNEdge_dZ.push_back(edge->getEdgeDZ());
159 m_GNNEdge_dEta.push_back(edge->getEdgeDEta());
160 m_GNNEdge_phiSlope.push_back(edge->getEdgePhiSlope());
161 m_GNNEdge_rPhiSlope.push_back(edge->getEdgeRPhiSlope());
162 m_GNNEdge_score.push_back(edge->getEdgeScore());
163 }
164 m_GNNEdge_tree->Fill();
165
166 for (const auto& road : roads) {
167 m_road_id.push_back(road->getRoadID());
168 m_road_nHits.push_back(road->getNHits());
169 m_road_nHits_layer.push_back(road->getNHits_layer());
170 m_road_nLayers.push_back(road->getNLayers());
171
172 std::vector<std::vector<HepMcParticleLink::barcode_type>> road_hit_uniqueID(road->getNLayers());
173 std::vector<std::vector<HepMcParticleLink::barcode_type>> road_hit_barcode(road->getNLayers());
174 std::vector<std::vector<long>> road_hit_eventIndex(road->getNLayers());
175 std::vector<std::vector<float>> road_hit_z(road->getNLayers());
176 std::vector<std::vector<float>> road_hit_r(road->getNLayers());
177 for (size_t l = 0; l < road->getNLayers(); ++l) {
178 for (const auto &layerH : road->getHits(l)) {
179 road_hit_uniqueID[l].push_back((*layerH).getUniqueID());
180 road_hit_barcode[l].push_back((*layerH).getBarcode());
181 road_hit_eventIndex[l].push_back((*layerH).getEventIndex());
182 road_hit_z[l].push_back((*layerH).getOriginalHit().getZ());
183 road_hit_r[l].push_back((*layerH).getOriginalHit().getR());
184 }
185 }
186
187 m_road_hit_uniqueID.push_back(std::move(road_hit_uniqueID));
188 m_road_hit_barcode.push_back(std::move(road_hit_barcode));
189 m_road_hit_eventIndex.push_back(std::move(road_hit_eventIndex));
190 m_road_hit_z.push_back(std::move(road_hit_z));
191 m_road_hit_r.push_back(std::move(road_hit_r));
192
193 }
194 m_road_tree->Fill();
195
196 resetVectors();
197
198 return StatusCode::SUCCESS;
199}
l
Printing final latex table to .tex output file.

◆ initialize()

StatusCode FPGATrackSimGNNRootOutputTool::initialize ( )
overridevirtual

Definition at line 13 of file FPGATrackSimGNNRootOutputTool.cxx.

14{
15 ATH_CHECK(m_tHistSvc.retrieve());
17 return StatusCode::SUCCESS;
18}

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ resetVectors()

void FPGATrackSimGNNRootOutputTool::resetVectors ( )
private

Definition at line 201 of file FPGATrackSimGNNRootOutputTool.cxx.

202{
203 m_hit_id.clear();
204 m_hit_module_id.clear();
205 m_hit_x.clear();
206 m_hit_y.clear();
207 m_hit_z.clear();
208 m_hit_r.clear();
209 m_hit_phi.clear();
210 m_hit_isPixel.clear();
211 m_hit_isStrip.clear();
212 m_hit_hitType.clear();
213 m_hit_uniqueID.clear();
214 m_hit_eventIndex.clear();
215 m_hit_cluster_x.clear();
216 m_hit_cluster_y.clear();
217 m_hit_cluster_z.clear();
218 m_GNNHit_id.clear();
219 m_GNNHit_module_id.clear();
220 m_GNNHit_road_id.clear();
221 m_GNNHit_x.clear();
222 m_GNNHit_y.clear();
223 m_GNNHit_z.clear();
224 m_GNNHit_r.clear();
225 m_GNNHit_phi.clear();
226 m_GNNHit_eta.clear();
227 m_GNNHit_cluster_x_1.clear();
228 m_GNNHit_cluster_y_1.clear();
229 m_GNNHit_cluster_z_1.clear();
230 m_GNNHit_cluster_r_1.clear();
233 m_GNNHit_cluster_x_2.clear();
234 m_GNNHit_cluster_y_2.clear();
235 m_GNNHit_cluster_z_2.clear();
236 m_GNNHit_cluster_r_2.clear();
239 m_GNNEdge_index_1.clear();
240 m_GNNEdge_index_2.clear();
241 m_GNNEdge_dR.clear();
242 m_GNNEdge_dPhi.clear();
243 m_GNNEdge_dZ.clear();
244 m_GNNEdge_dEta.clear();
245 m_GNNEdge_phiSlope.clear();
246 m_GNNEdge_rPhiSlope.clear();
247 m_GNNEdge_score.clear();
248 m_road_id.clear();
249 m_road_nHits.clear();
250 m_road_nHits_layer.clear();
251 m_road_nLayers.clear();
252 m_road_hit_uniqueID.clear();
253 m_road_hit_barcode.clear();
254 m_road_hit_eventIndex.clear();
255 m_road_hit_z.clear();
256 m_road_hit_r.clear();
257}

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_GNNEdge_dEta

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_dEta {}
private

Definition at line 115 of file FPGATrackSimGNNRootOutputTool.h.

115{};

◆ m_GNNEdge_dPhi

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_dPhi {}
private

Definition at line 113 of file FPGATrackSimGNNRootOutputTool.h.

113{};

◆ m_GNNEdge_dR

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_dR {}
private

Definition at line 112 of file FPGATrackSimGNNRootOutputTool.h.

112{};

◆ m_GNNEdge_dZ

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_dZ {}
private

Definition at line 114 of file FPGATrackSimGNNRootOutputTool.h.

114{};

◆ m_GNNEdge_index_1

std::vector<unsigned int> FPGATrackSimGNNRootOutputTool::m_GNNEdge_index_1 {}
private

Definition at line 110 of file FPGATrackSimGNNRootOutputTool.h.

110{};

◆ m_GNNEdge_index_2

std::vector<unsigned int> FPGATrackSimGNNRootOutputTool::m_GNNEdge_index_2 {}
private

Definition at line 111 of file FPGATrackSimGNNRootOutputTool.h.

111{};

◆ m_GNNEdge_phiSlope

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_phiSlope {}
private

Definition at line 116 of file FPGATrackSimGNNRootOutputTool.h.

116{};

◆ m_GNNEdge_rPhiSlope

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_rPhiSlope {}
private

Definition at line 117 of file FPGATrackSimGNNRootOutputTool.h.

117{};

◆ m_GNNEdge_score

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNEdge_score {}
private

Definition at line 118 of file FPGATrackSimGNNRootOutputTool.h.

118{};

◆ m_GNNEdge_tree

TTree* FPGATrackSimGNNRootOutputTool::m_GNNEdge_tree = nullptr
private

Definition at line 109 of file FPGATrackSimGNNRootOutputTool.h.

◆ m_GNNHit_cluster_eta_1

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_eta_1 {}
private

Definition at line 101 of file FPGATrackSimGNNRootOutputTool.h.

101{};

◆ m_GNNHit_cluster_eta_2

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_eta_2 {}
private

Definition at line 107 of file FPGATrackSimGNNRootOutputTool.h.

107{};

◆ m_GNNHit_cluster_phi_1

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_phi_1 {}
private

Definition at line 100 of file FPGATrackSimGNNRootOutputTool.h.

100{};

◆ m_GNNHit_cluster_phi_2

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_phi_2 {}
private

Definition at line 106 of file FPGATrackSimGNNRootOutputTool.h.

106{};

◆ m_GNNHit_cluster_r_1

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_r_1 {}
private

Definition at line 99 of file FPGATrackSimGNNRootOutputTool.h.

99{};

◆ m_GNNHit_cluster_r_2

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_r_2 {}
private

Definition at line 105 of file FPGATrackSimGNNRootOutputTool.h.

105{};

◆ m_GNNHit_cluster_x_1

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_x_1 {}
private

Definition at line 96 of file FPGATrackSimGNNRootOutputTool.h.

96{};

◆ m_GNNHit_cluster_x_2

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_x_2 {}
private

Definition at line 102 of file FPGATrackSimGNNRootOutputTool.h.

102{};

◆ m_GNNHit_cluster_y_1

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_y_1 {}
private

Definition at line 97 of file FPGATrackSimGNNRootOutputTool.h.

97{};

◆ m_GNNHit_cluster_y_2

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_y_2 {}
private

Definition at line 103 of file FPGATrackSimGNNRootOutputTool.h.

103{};

◆ m_GNNHit_cluster_z_1

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_z_1 {}
private

Definition at line 98 of file FPGATrackSimGNNRootOutputTool.h.

98{};

◆ m_GNNHit_cluster_z_2

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_cluster_z_2 {}
private

Definition at line 104 of file FPGATrackSimGNNRootOutputTool.h.

104{};

◆ m_GNNHit_eta

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_eta {}
private

Definition at line 95 of file FPGATrackSimGNNRootOutputTool.h.

95{};

◆ m_GNNHit_id

std::vector<unsigned int> FPGATrackSimGNNRootOutputTool::m_GNNHit_id {}
private

Definition at line 87 of file FPGATrackSimGNNRootOutputTool.h.

87{};

◆ m_GNNHit_module_id

std::vector<unsigned int> FPGATrackSimGNNRootOutputTool::m_GNNHit_module_id {}
private

Definition at line 88 of file FPGATrackSimGNNRootOutputTool.h.

88{};

◆ m_GNNHit_phi

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_phi {}
private

Definition at line 94 of file FPGATrackSimGNNRootOutputTool.h.

94{};

◆ m_GNNHit_r

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_r {}
private

Definition at line 93 of file FPGATrackSimGNNRootOutputTool.h.

93{};

◆ m_GNNHit_road_id

std::vector<int> FPGATrackSimGNNRootOutputTool::m_GNNHit_road_id {}
private

Definition at line 89 of file FPGATrackSimGNNRootOutputTool.h.

89{};

◆ m_GNNHit_tree

TTree* FPGATrackSimGNNRootOutputTool::m_GNNHit_tree = nullptr
private

Definition at line 86 of file FPGATrackSimGNNRootOutputTool.h.

◆ m_GNNHit_x

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_x {}
private

Definition at line 90 of file FPGATrackSimGNNRootOutputTool.h.

90{};

◆ m_GNNHit_y

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_y {}
private

Definition at line 91 of file FPGATrackSimGNNRootOutputTool.h.

91{};

◆ m_GNNHit_z

std::vector<float> FPGATrackSimGNNRootOutputTool::m_GNNHit_z {}
private

Definition at line 92 of file FPGATrackSimGNNRootOutputTool.h.

92{};

◆ m_hit_cluster_x

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_cluster_x {}
private

Definition at line 82 of file FPGATrackSimGNNRootOutputTool.h.

82{};

◆ m_hit_cluster_y

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_cluster_y {}
private

Definition at line 83 of file FPGATrackSimGNNRootOutputTool.h.

83{};

◆ m_hit_cluster_z

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_cluster_z {}
private

Definition at line 84 of file FPGATrackSimGNNRootOutputTool.h.

84{};

◆ m_hit_eventIndex

std::vector<long> FPGATrackSimGNNRootOutputTool::m_hit_eventIndex {}
private

Definition at line 81 of file FPGATrackSimGNNRootOutputTool.h.

81{};

◆ m_hit_hitType

std::vector<int> FPGATrackSimGNNRootOutputTool::m_hit_hitType {}
private

Definition at line 79 of file FPGATrackSimGNNRootOutputTool.h.

79{};

◆ m_hit_id

std::vector<unsigned int> FPGATrackSimGNNRootOutputTool::m_hit_id {}
private

Definition at line 70 of file FPGATrackSimGNNRootOutputTool.h.

70{};

◆ m_hit_isPixel

std::vector<bool> FPGATrackSimGNNRootOutputTool::m_hit_isPixel {}
private

Definition at line 77 of file FPGATrackSimGNNRootOutputTool.h.

77{};

◆ m_hit_isStrip

std::vector<bool> FPGATrackSimGNNRootOutputTool::m_hit_isStrip {}
private

Definition at line 78 of file FPGATrackSimGNNRootOutputTool.h.

78{};

◆ m_hit_module_id

std::vector<unsigned int> FPGATrackSimGNNRootOutputTool::m_hit_module_id {}
private

Definition at line 71 of file FPGATrackSimGNNRootOutputTool.h.

71{};

◆ m_hit_phi

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_phi {}
private

Definition at line 76 of file FPGATrackSimGNNRootOutputTool.h.

76{};

◆ m_hit_r

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_r {}
private

Definition at line 75 of file FPGATrackSimGNNRootOutputTool.h.

75{};

◆ m_hit_tree

TTree* FPGATrackSimGNNRootOutputTool::m_hit_tree = nullptr
private

Definition at line 69 of file FPGATrackSimGNNRootOutputTool.h.

◆ m_hit_uniqueID

std::vector<HepMcParticleLink::barcode_type> FPGATrackSimGNNRootOutputTool::m_hit_uniqueID {}
private

Definition at line 80 of file FPGATrackSimGNNRootOutputTool.h.

80{};

◆ m_hit_x

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_x {}
private

Definition at line 72 of file FPGATrackSimGNNRootOutputTool.h.

72{};

◆ m_hit_y

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_y {}
private

Definition at line 73 of file FPGATrackSimGNNRootOutputTool.h.

73{};

◆ m_hit_z

std::vector<float> FPGATrackSimGNNRootOutputTool::m_hit_z {}
private

Definition at line 74 of file FPGATrackSimGNNRootOutputTool.h.

74{};

◆ m_region

Gaudi::Property<std::string> FPGATrackSimGNNRootOutputTool::m_region { this, "OutputRegion", "", "region ID"}
private

Definition at line 64 of file FPGATrackSimGNNRootOutputTool.h.

64{ this, "OutputRegion", "", "region ID"};

◆ m_road_hit_barcode

std::vector<std::vector<std::vector<HepMcParticleLink::barcode_type> > > FPGATrackSimGNNRootOutputTool::m_road_hit_barcode {}
private

Definition at line 126 of file FPGATrackSimGNNRootOutputTool.h.

126{};

◆ m_road_hit_eventIndex

std::vector<std::vector<std::vector<long> > > FPGATrackSimGNNRootOutputTool::m_road_hit_eventIndex {}
private

Definition at line 127 of file FPGATrackSimGNNRootOutputTool.h.

127{};

◆ m_road_hit_r

std::vector<std::vector<std::vector<float> > > FPGATrackSimGNNRootOutputTool::m_road_hit_r {}
private

Definition at line 129 of file FPGATrackSimGNNRootOutputTool.h.

129{};

◆ m_road_hit_uniqueID

std::vector<std::vector<std::vector<HepMcParticleLink::barcode_type> > > FPGATrackSimGNNRootOutputTool::m_road_hit_uniqueID {}
private

Definition at line 125 of file FPGATrackSimGNNRootOutputTool.h.

125{};

◆ m_road_hit_z

std::vector<std::vector<std::vector<float> > > FPGATrackSimGNNRootOutputTool::m_road_hit_z {}
private

Definition at line 128 of file FPGATrackSimGNNRootOutputTool.h.

128{};

◆ m_road_id

std::vector<int> FPGATrackSimGNNRootOutputTool::m_road_id {}
private

Definition at line 121 of file FPGATrackSimGNNRootOutputTool.h.

121{};

◆ m_road_nHits

std::vector<size_t> FPGATrackSimGNNRootOutputTool::m_road_nHits {}
private

Definition at line 122 of file FPGATrackSimGNNRootOutputTool.h.

122{};

◆ m_road_nHits_layer

std::vector<std::vector<size_t> > FPGATrackSimGNNRootOutputTool::m_road_nHits_layer {}
private

Definition at line 123 of file FPGATrackSimGNNRootOutputTool.h.

123{};

◆ m_road_nLayers

std::vector<size_t> FPGATrackSimGNNRootOutputTool::m_road_nLayers {}
private

Definition at line 124 of file FPGATrackSimGNNRootOutputTool.h.

124{};

◆ m_road_tree

TTree* FPGATrackSimGNNRootOutputTool::m_road_tree = nullptr
private

Definition at line 120 of file FPGATrackSimGNNRootOutputTool.h.

◆ m_tHistSvc

ServiceHandle<ITHistSvc> FPGATrackSimGNNRootOutputTool::m_tHistSvc {this, "THistSvc", "THistSvc"}
private

Definition at line 63 of file FPGATrackSimGNNRootOutputTool.h.

63{this, "THistSvc", "THistSvc"};

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files: