GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
map_creator_selector.cpp
[詳解]
1
3
4// Copyright(c) 2023-2025 Design Engineering Laboratory, Saitama University
5// Released under the MIT license
6// https://opensource.org/licenses/mit-license.php
7
9
10#include <memory>
11#include <string>
12#include <utility>
13
14#include "cassert_define.h"
15#include "map_creator_by_csv.h"
19#include "toml_file_importer.h"
20
21namespace designlab {
22
23std::unique_ptr<IMapCreator> MapCreatorSelector::Select(
24 const SimulationSettingRecord& record) const {
25 std::unique_ptr<IMapCreator> map_creator;
26
28 map_creator = std::make_unique<MapCreatorByCsv>(
31 auto validator_ptr = std::make_unique<SimulationMapParameterValidator>();
32
34 simulation_map_parameter_importer(std::move(validator_ptr));
35
36 const std::string simulation_map_param_file_path =
39
40 const auto simulation_map_parameter =
41 simulation_map_parameter_importer.ImportOrUseDefault(
42 simulation_map_param_file_path);
43
44 map_creator =
45 std::make_unique<MapCreatorForSimulation>(simulation_map_parameter);
46 } else {
47 assert(false && "MapCreateMode is not supported.");
48 }
49
50 return std::move(map_creator);
51}
52
53} // namespace designlab
std::unique_ptr< IMapCreator > Select(const SimulationSettingRecord &record) const
マップを生成するクラスを生成する.
static const char kTomlFileDirPath[]
TOMLファイルを入れるディレクトリのパス.
tomlファイルを読み込んで構造体に変換するテンプレートクラス.
T ImportOrUseDefault(const std::string &file_path) const
指定したファイルパスのファイルを読み込み,構造体に変換する. 読込に失敗した場合は,デフォルトの構造体を返す. また,読込に失敗した場合には, デフォルトの構造体をファイルに出力するかどうかをユーザに問...