27 #include <SimoxUtility/meta/type_name.h>
33 const std::map<type::quaternion::ElementType, std::tuple<std::string, int, std::string>>
37 "::armarx::aron::type::quaternion::ElementType::FLOAT32"}},
38 {type::quaternion::ElementType::FLOAT64,
41 "::armarx::aron::type::quaternion::ElementType::FLOAT64"}}};
54 std::vector<std::string>
57 return {
"<RobotAPI/libraries/aron/common/rw/eigen.h>"};
60 std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
86 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
111 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
112 block_if_data->addLine(cppAccessor +
nextEl() +
"setIdentity();");
118 const std::string& cppAccessor,
120 std::string& variantAccessor)
const
131 "})); // of " + cppAccessor);
138 std::string& variantAccessor)
const
140 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
146 resolved_accessor +
", " + variantAccessor +
", " +
148 simox::alg::join(p.
getPath(),
", ") +
"})); // of " + cppAccessor);
155 const std::string& variantAccessor)
const
157 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
163 block_if_data->addLine(reset);
167 variantAccessor +
", " + resolved_accessor +
"); // of " +
175 const std::string& otherInstanceAccessor)
const
177 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
178 block_if_data->addLine(
"if (not (" + accessor +
nextEl() +
"isApprox(" +
179 otherInstanceAccessor +
")))");
180 block_if_data->addLineAsBlock(
"return false;");