9 template class Map<Sophus::SO2<double>>;
10 template class Map<Sophus::SO2<double>
const>;
15 template class SO2<double, Eigen::AutoAlign>;
16 template class SO2<float, Eigen::DontAlign>;
18 template class SO2<ceres::Jet<double, 3>>;
21 template <
class Scalar>
70 for (std::size_t i = 0; i < 1000; ++i) {
83 Eigen::Map<SO2Type const> map_of_const_so2(raw.data());
88 Eigen::Map<SO2Type const> const_shallow_copy = map_of_const_so2;
90 map_of_const_so2.unit_complex().eval());
93 Eigen::Map<SO2Type> map_of_so2(raw.data());
94 map_of_so2.setComplex(raw2);
99 Eigen::Map<SO2Type> shallow_copy = map_of_so2;
101 map_of_so2.unit_complex().eval());
104 for (
int i = 0; i < 2; ++i) {
109 for (
int i = 0; i < 2; ++i) {
110 so2.data()[i] = raw[i];
113 for (
int i = 0; i < 2; ++i) {
128 template <
class S = Scalar>
132 for (
int i = 0; i < 100; ++i) {
143 template <
class S = Scalar>
148 std::vector<SO2Type, Eigen::aligned_allocator<SO2Type>>
so2_vec_;
149 std::vector<Tangent, Eigen::aligned_allocator<Tangent>>
tangent_vec_;
150 std::vector<Point, Eigen::aligned_allocator<Point>>
point_vec_;
157 cerr <<
"Test SO2" << endl << endl;
158 cerr <<
"Double tests: " << endl;
160 cerr <<
"Float tests: " << endl;
164 cerr <<
"ceres::Jet<double, 3> tests: " << endl;