27 #include <SimoxUtility/meta/type_name.h>
33 const std::map<type::matrix::ElementType, std::tuple<std::string, int, std::string>>
37 sizeof(
unsigned char),
38 "::armarx::aron::type::matrix::UINT8"}},
39 {type::matrix::UINT16,
41 sizeof(
unsigned short),
42 "::armarx::aron::type::matrix::UINT16"}},
51 {type::matrix::FLOAT32,
53 {type::matrix::FLOAT64,
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>" :
">"),
64 (n.getRows() == -1 ?
"Eigen::Dynamic" :
std::
to_string(n.getRows())) +
", " +
65 (n.getCols() == -1 ?
"Eigen::Dynamic" :
std::
to_string(n.getCols())) +
66 (n.getCols() != 1 ?
", Eigen::RowMajor>" :
">"),
73 std::vector<std::string>
76 return {
"<RobotAPI/libraries/aron/common/rw/eigen.h>"};
79 std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
110 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
144 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
145 block_if_data->addLine(cppAccessor +
nextEl() +
"setZero();");
151 const std::string& cppAccessor,
153 std::string& variantAccessor)
const
165 "})); // of " + cppAccessor);
173 std::string& variantAccessor)
const
175 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
181 resolved_accessor +
", " + variantAccessor +
", " +
183 simox::alg::join(p.
getPath(),
", ") +
"})); // of " + cppAccessor);
191 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
197 block_if_data->addLine(reset);
201 variantAccessor +
", " + resolved_accessor +
"); // of " +
209 const std::string& otherInstanceAccessor)
const
211 CppBlockPtr block_if_data = std::make_shared<CppBlock>();
212 block_if_data->addLine(
"if (not (" + accessor +
nextEl() +
"isApprox(" +
214 block_if_data->addLineAsBlock(
"return false;");