22 const std::shared_ptr<const IHexapodCoordinateConverter>& converter_ptr,
23 const std::shared_ptr<const IHexapodStatePresenter>& presenter_ptr,
24 const std::shared_ptr<const IHexapodPostureValidator>& checker_ptr)
25 : converter_ptr_(converter_ptr),
26 presenter_ptr_(presenter_ptr),
27 checker_ptr_(checker_ptr) {}
31 std::map<
HexapodMove, std::unique_ptr<INodeCreator>>* node_creator)
const {
32 assert(node_creator !=
nullptr);
33 assert(node_creator->size() == 0);
35 const auto hierarchy_list = std::vector<DiscreteLegPos>{
46 std::make_unique<NodeCreatorLegUpDown>(map, converter_ptr_,
47 presenter_ptr_, checker_ptr_,
51 std::make_unique<NodeCreatorBodyRot>(map, converter_ptr_, checker_ptr_,
56 std::make_unique<NodeCreatorComUpDown>(map, converter_ptr_,
57 presenter_ptr_, checker_ptr_,
61 map, converter_ptr_, presenter_ptr_, checker_ptr_,