GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
node_creator_builder_straight_move.h
[詳解]
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
8#ifndef DESIGNLAB_NODE_CREATOR_BUILDER_STRAIGHT_MOVE_H_
9#define DESIGNLAB_NODE_CREATOR_BUILDER_STRAIGHT_MOVE_H_
10
11#include <map>
12#include <memory>
13
15
16
17namespace designlab
18{
19
23{
24public:
26 const std::shared_ptr<const IHexapodCoordinateConverter>& converter_ptr,
27 const std::shared_ptr<const IHexapodStatePresenter>& presenter_ptr,
28 const std::shared_ptr<const IHexapodPostureValidator>& checker_ptr);
29
30 void Build(
31 const DividedMapState& map,
32 std::map<HexapodMove, std::unique_ptr<INodeCreator> >* node_creator) const override;
33
34private:
35 const std::shared_ptr<const IHexapodCoordinateConverter> converter_ptr_;
36 const std::shared_ptr<const IHexapodStatePresenter> presenter_ptr_;
37 const std::shared_ptr<const IHexapodPostureValidator> checker_ptr_;
38};
39
40} // namespace designlab
41
42
43#endif // DESIGNLAB_NODE_CREATOR_BUILDER_STRAIGHT_MOVE_H_
マップを格子状に分割して管理するクラス.
INodeCreatorを生成するためのビルダークラス.
波東さんが行った処理と同様の方法になるようにノード生成クラスを生成するクラス.
void Build(const DividedMapState &map, std::map< HexapodMove, std::unique_ptr< INodeCreator > > *node_creator) const override
INodeCreatorを生成する.
HexapodMove
ロボットが次にどの動作をするのかを表す列挙体.