17 return StatusCode::SUCCESS;
25 m_hit_tree =
new TTree(
"FPGATrackSimHit",
"FPGATrackSimHit");
42 m_GNNHit_tree =
new TTree(
"FPGATrackSimGNNHit",
"FPGATrackSimGNNHit");
65 m_GNNEdge_tree =
new TTree(
"FPGATrackSimGNNEdge",
"FPGATrackSimGNNEdge");
76 m_road_tree =
new TTree(
"FPGATrackSimRoad",
"FPGATrackSimRoad");
91 return StatusCode::SUCCESS;
95 const std::vector<std::shared_ptr<FPGATrackSimGNNHit>> & gnn_hits,
96 const std::vector<std::shared_ptr<FPGATrackSimGNNEdge>> & edges,
97 const std::vector<std::shared_ptr<const FPGATrackSimRoad>> & roads)
101 for (
const auto& hit :
hits) {
104 m_hit_x.push_back(hit->getX());
105 m_hit_y.push_back(hit->getY());
106 m_hit_z.push_back(hit->getZ());
107 m_hit_r.push_back(hit->getR());
111 m_hit_hitType.push_back(
static_cast<int>(hit->getHitType()));
122 for (
const auto& hit : gnn_hits) {
148 for (
const auto& edge : edges) {
161 for (
const auto& road : roads) {
167 std::vector<std::vector<HepMcParticleLink::barcode_type>> road_hit_uniqueID(road->getNLayers());
168 std::vector<std::vector<HepMcParticleLink::barcode_type>> road_hit_barcode(road->getNLayers());
169 std::vector<std::vector<float>> road_hit_z(road->getNLayers());
170 std::vector<std::vector<float>> road_hit_r(road->getNLayers());
171 for (
size_t l = 0;
l < road->getNLayers(); ++
l) {
172 for (
const auto &layerH : road->getHits(
l)) {
173 road_hit_uniqueID[
l].push_back((*layerH).getUniqueID());
174 road_hit_barcode[
l].push_back((*layerH).getBarcode());
175 road_hit_z[
l].push_back((*layerH).getOriginalHit().getZ());
176 road_hit_r[
l].push_back((*layerH).getOriginalHit().getR());
190 return StatusCode::SUCCESS;