27 #include <SimoxUtility/meta/type_name.h>
29 #include <RobotAPI/interface/aron/Aron.h>
34 const std::map<type::quaternion::ElementType, std::tuple<std::string, int, std::string>>
38 "::armarx::aron::type::quaternion::ElementType::FLOAT32"}},
39 {type::quaternion::ElementType::FLOAT64,
42 "::armarx::aron::type::quaternion::ElementType::FLOAT64"}}};
55 std::vector<std::string>
58 return {
"<RobotAPI/libraries/aron/common/rw/eigen.h>"};
61 std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
87 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
116 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
117 block_if_data->addLine(cppAccessor +
nextEl() +
"setIdentity();");
123 const std::string& cppAccessor,
125 std::string& variantAccessor)
const
136 "})); // of " + cppAccessor);
143 std::string& variantAccessor)
const
145 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
151 resolved_accessor +
", " + variantAccessor +
", " +
153 simox::alg::join(p.
getPath(),
", ") +
"})); // of " + cppAccessor);
160 const std::string& variantAccessor)
const
162 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
168 block_if_data->addLine(reset);
172 variantAccessor +
", " + resolved_accessor +
"); // of " +
180 const std::string& otherInstanceAccessor)
const
182 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
183 block_if_data->addLine(
"if (not (" + accessor +
nextEl() +
"isApprox(" +
185 : otherInstanceAccessor) +
187 block_if_data->addLineAsBlock(
"return false;");