15 #ifndef TRAFFIC_SIMULATOR__API__CONFIGURATION_HPP_
16 #define TRAFFIC_SIMULATOR__API__CONFIGURATION_HPP_
19 #include <ament_index_cpp/get_package_share_directory.hpp>
20 #include <boost/filesystem.hpp>
21 #include <boost/filesystem/operations.hpp>
22 #include <boost/range/iterator_range.hpp>
69 ament_index_cpp::get_package_share_directory(
"traffic_simulator") +
70 "/config/scenario_simulator_v2.rviz";
83 }
else if (not boost::filesystem::is_directory(
map_path)) {
85 "The map_path must be a directory (given an ", std::quoted(
map_path.string()),
")");
95 template <
typename... Ts>
106 for (
const auto & each :
107 boost::make_iterator_range(boost::filesystem::directory_iterator(pathname), {})) {
108 const auto filename = each.path().filename().string();
110 each.path().extension() == extension and
111 std::lexicographical_compare(
112 std::cbegin(result), std::cend(result), std::cbegin(filename), std::cend(filename))) {
Definition: junit5.hpp:25
std::string string
Definition: junit5.hpp:26
A problem occurred that interfered with the continuation of the simulation.
Definition: exception.hpp:47
Definition: configuration.hpp:30
auto lanelet2_map_path() const
Definition: configuration.hpp:138
auto contains(Ts &&... xs) const -> bool
Definition: configuration.hpp:96
const Pathname map_path
Definition: configuration.hpp:60
Configuration(const Pathname &map_path)
Definition: configuration.hpp:72
auto getLanelet2MapFile() const -> const auto &
Definition: configuration.hpp:120
auto assertMapPath(const Pathname &map_path) const -> const Pathname &
Definition: configuration.hpp:79
std::string Filename
Definition: configuration.hpp:31
auto findLexicographicallyFirstFilenameOf(const Pathname &pathname, const std::string &extension) const -> Filename
Definition: configuration.hpp:101
double v2i_traffic_light_publish_rate
Definition: configuration.hpp:45
auto getPointCloudMapFile() const -> const auto &
Definition: configuration.hpp:129
bool standalone_mode
Definition: configuration.hpp:39
Filename pointcloud_map_file
Definition: configuration.hpp:64
bool verbose
Definition: configuration.hpp:37
bool auto_sink
Definition: configuration.hpp:35
std::string simulator_host
Definition: configuration.hpp:41
Pathname scenario_path
Definition: configuration.hpp:66
Filename lanelet2_map_file
Definition: configuration.hpp:62
Pathname rviz_config_path
Definition: configuration.hpp:68
boost::filesystem::path Pathname
Definition: configuration.hpp:33
double conventional_traffic_light_publish_rate
Definition: configuration.hpp:43
auto pointcloud_map_path() const
Definition: configuration.hpp:140