27 #include <RobotAPI/interface/aron.h>
37 convert_to_1d_vector(
const unsigned char*
data,
const int offset,
const int size)
41 int elements = size /
sizeof(
T);
43 std::vector<T>
v(elements);
44 memcpy(
v.data(),
data + offset, size);
53 static std::vector<std::vector<T>>
58 if (dims.size() == 0 || dim0size == 0)
65 dim0size = dims.at(0);
71 const int fullDataSize = fullDataByteSize /
sizeof(
T);
74 const int dim1size = fullDataSize / dim0size;
76 const int oneRowByteSize = dim1size *
sizeof(
T);
77 std::vector<std::vector<T>>
v(dims.at(0));
78 for (
int i = 0; i < dim0size; i++)
80 v[i] = convert_to_1d_vector<T>(nav.
getData(), i * oneRowByteSize, oneRowByteSize);
87 static std::vector<std::vector<T>>
92 return ConvertTo2DVector<T>(*nav);
101 if (dims.size() == 0)
109 const int dim0size = fullDataByteSize /
sizeof(
T);
111 const int oneRowByteSize = dim0size *
sizeof(
T);
112 std::vector<T>
v = convert_to_1d_vector<T>(nav.
getData(), 0, oneRowByteSize);
116 template <
typename T>
117 static std::vector<T>
122 return ConvertTo1DVector<T>(*nav);
126 template <
typename T>
127 static std::vector<T>
130 return ConvertTo1DVector<T>(nav);
134 template <
typename T>
140 ndArr->setShape({
static_cast<int>(
data.size()),
sizeof(
T)});
141 ndArr->setData(
sizeof(
T) *
data.size(),
142 reinterpret_cast<const unsigned char*
>(
data.data()));
148 template <
typename T>
152 return ConvertFrom1DVector<T>(
data);