31 {
32 std::ifstream fin(config_file);
33 if (!fin.is_open()) {
34 return false;
35 }
36 channels->clear();
37 child_frame_ids->clear();
38 std::string line;
39 std::getline(fin, line);
40 while (!fin.eof()) {
41 std::cout << line << std::endl;
42 if (line[0] == '#') {
43 std::getline(fin, line);
44 continue;
45 }
46 const std::vector<std::string> splits = absl::StrSplit(line, ' ');
47 if (splits.size() == 3 && std::stoi(splits[2]) > 0) {
48 channels->push_back(splits[0]);
49 child_frame_ids->push_back(splits[1]);
50 }
51 std::getline(fin, line);
52 }
53 fin.close();
54 for (std::size_t i = 0; i < channels->size(); ++i) {
55 std::cout << "\t\tRead channel " << channels->at(i) << " child_frame_id "
56 << child_frame_ids->at(i) << std::endl;
57 }
58 return true;
59}