31 VIPRA_MODULE_NAME(
"main");
34 VIPRA_REGISTER_PARAMS(VIPRA_PARAM(
"max_timestep", _maxTimestep),
35 VIPRA_PARAM(
"timestep_size", _timestepSize),
36 VIPRA_PARAM(
"output_frequency", _outputFrequency),
37 VIPRA_PARAM(
"random_seed", _seed),
38 VIPRA_PARAM(
"output_params", _outputParams));
41 void operator()(std::string
const& pedPath, std::string
const& mapPath,
42 std::string
const& paramsPath);
44 void set_install_dir(std::string
const& dir) { _installDir = dir; }
45 void set_module(Modules::Type type, std::string
const& name);
46 void set_modules(std::string
const& modulesPath);
49 void output_timings();
51 void set_sim_id(VIPRA::idx idx) { _currSimIdx = idx; }
52 void add_sim_id(VIPRA::idx idx) { _currSimIdx += idx; }
53 [[nodiscard]]
auto get_sim_id()
const -> VIPRA::idx {
return _currSimIdx; }
60 std::unique_ptr<Modules::Model> _model;
61 std::unique_ptr<Modules::Pedestrians> _pedset;
62 std::unique_ptr<Modules::Goals> _goals;
63 std::unique_ptr<Modules::Map> _map;
64 std::unique_ptr<Modules::PedestrianInput> _pedInput;
65 std::unique_ptr<Modules::MapInput> _mapInput;
75 VIPRA::idx _currSimIdx{};
76 VIPRA::timestep _currTimestep{};
77 VIPRA::f_pnt _timestepSize{};
78 VIPRA::timestep _maxTimestep{};
80 VIPRA::timestep _outputFrequency{};
81 std::string _installDir;
82 bool _outputParams{
false};
85 void cleanup_modules();
void operator()(std::string const &pedPath, std::string const &mapPath, std::string const ¶msPath)
Runs the simulation with the given parameters.
Definition sim_type.cpp:102