19 const std::string csv_list_str(csvList);
27 std::vector<std::string> parts =
split(csvList);
30 std::vector<IndexName> indexNames;
31 indexNames.reserve(parts.size() / 2);
32 for (
int i = 0; i + 1 < parts.size(); i += 2)
36 index_name.
index = std::stoi(parts[i]);
37 index_name.
name = parts[i + 1];
40 indexNames.push_back(index_name);
49 std::vector<unsigned int> indexes;
50 indexes.reserve(list.size());
53 for (
int i = 0; i < list.size(); i++)
55 indexes.emplace_back(list[i].index);
64 std::vector<std::string> names;
65 names.reserve(list.size());
68 for (
int i = 0; i < list.size(); i++)
70 names.emplace_back(list[i].name);
rohdeschwarz helper function definition
std::vector< std::string > split(const char *csvList, const char separator=',')
Splits string on separator.
Data type for handling named and indexed quantities.
static std::vector< unsigned int > indexesFrom(const std::vector< IndexName > &list)
Returns index list from IndexName list.
static std::vector< IndexName > parse(const char *csvList)
Parses index-name pairs from text.
static std::vector< std::string > namesFrom(const std::vector< IndexName > &list)
Returns names list from IndexName list.