27 #include <SimoxUtility/meta/type_name.h>
33 const std::map<type::matrix::ElementType, std::tuple<std::string, int, std::string>>
37 {type::matrix::UINT16,
47 {type::matrix::FLOAT32,
49 {type::matrix::FLOAT64,
56 (n.getRows() == -1 ?
"Eigen::Dynamic" :
std::
to_string(n.getRows())) +
", " +
57 (n.getCols() == -1 ?
"Eigen::Dynamic" :
std::
to_string(n.getCols())) +
58 (n.getCols() != 1 ?
", Eigen::RowMajor>" :
">"),
60 (n.getRows() == -1 ?
"Eigen::Dynamic" :
std::
to_string(n.getRows())) +
", " +
61 (n.getCols() == -1 ?
"Eigen::Dynamic" :
std::
to_string(n.getCols())) +
62 (n.getCols() != 1 ?
", Eigen::RowMajor>" :
">"),
69 std::vector<std::string>
72 return {
"<RobotAPI/libraries/aron/common/rw/eigen.h>"};
75 std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
105 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
135 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
136 block_if_data->addLine(cppAccessor +
nextEl() +
"setZero();");
142 const std::string& cppAccessor,
144 std::string& variantAccessor)
const
156 "})); // of " + cppAccessor);
164 std::string& variantAccessor)
const
166 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
172 resolved_accessor +
", " + variantAccessor +
", " +
174 simox::alg::join(p.
getPath(),
", ") +
"})); // of " + cppAccessor);
182 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
188 block_if_data->addLine(reset);
192 variantAccessor +
", " + resolved_accessor +
"); // of " +
200 const std::string& otherInstanceAccessor)
const
202 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
203 block_if_data->addLine(
"if (not (" + accessor +
nextEl() +
"isApprox(" +
205 block_if_data->addLineAsBlock(
"return false;");