7 #include "ExaTrkXUtils.hpp"
21 return StatusCode::SUCCESS;
25 const std::vector<const Trk::SpacePoint*>& spacepoints,
26 std::vector<std::vector<uint32_t> >& tracks)
const {
27 int64_t numSpacepoints = (int64_t)spacepoints.size();
28 std::vector<float> inputValues;
29 std::vector<uint32_t> spacepointIDs;
33 for (
const auto& sp : spacepoints) {
37 for (
int i = 0;
i < spacepointFeatures;
i++){
41 spacepointIDs.push_back(sp_idx++);
45 inputData[
"FEATURES"] = std::make_pair(
46 std::vector<int64_t>{numSpacepoints, spacepointFeatures}, std::move(inputValues));
49 outputData[
"LABELS"] = std::make_pair(std::vector<int64_t>{numSpacepoints, 1}, std::vector<int64_t>{});
53 auto& trackLabels = std::get<std::vector<int64_t>>(outputData[
"LABELS"].second);
54 if (trackLabels.size() == 0){
56 return StatusCode::SUCCESS;
60 std::vector<uint32_t> this_track;
61 for (
auto label : trackLabels) {
63 if (this_track.size() > 0) {
64 tracks.push_back(this_track);
68 this_track.push_back(
label);
72 return StatusCode::SUCCESS;
88 out<<
"|---------------------------------------------------------------------|"
90 out<<
"| Number output tracks | "<<std::setw(12)
92 out<<
"|---------------------------------------------------------------------|"