13 const std::string&
type,
const std::string&
name,
const IInterface*
parent):
16 declareInterface<IGNNTrackReaderTool>(
this);
32 out<<
"|---------------------------------------------------------------------|"
34 out<<
"| Number output tracks | "<<std::setw(12)
36 out<<
"|---------------------------------------------------------------------|"
42 std::vector<std::vector<uint32_t> >& trackCandidates)
const
47 trackCandidates.clear();
50 if (!csvFile.is_open()) {
58 while(std::getline(csvFile,
line)){
59 std::stringstream lineStream(
line);
61 std::vector<uint32_t> trackCandidate;
70 cellId = std::stoi(
cell);
71 }
catch (
const std::invalid_argument& ia) {
72 std::cout <<
"Invalid argument: " << ia.what() <<
" for cell " <<
cell << std::endl;
76 if (
std::find(trackCandidate.begin(), trackCandidate.end(), cellId) == trackCandidate.end()) {
77 trackCandidate.push_back(cellId);
80 trackCandidates.push_back(std::move(trackCandidate));
89 std::vector<std::vector<uint32_t>>& trackCandidates,
90 std::vector<std::vector<uint32_t>>& seeds)
const {
95 trackCandidates.clear();
98 if (!csvFile.is_open()) {
106 while (std::getline(csvFile,
line)) {
107 std::istringstream lineStream(
line);
108 std::string CLString, SPString;
114 if (std::getline(lineStream, CLString,
'|') &&
115 std::getline(lineStream, SPString)) {
116 std::istringstream CLStream(CLString), SPStream(SPString);
117 std::vector<uint32_t>
cls, sps;
125 sps.push_back(std::stoi(
number));
128 trackCandidates.push_back(
cls);
129 seeds.push_back(sps);
134 ATH_MSG_DEBUG(
"Length of track list " << trackCandidates.size());