diff --git a/gtsam/base/Manifold.h b/gtsam/base/Manifold.h index a5a3d5f34..2cd78a028 100644 --- a/gtsam/base/Manifold.h +++ b/gtsam/base/Manifold.h @@ -106,23 +106,23 @@ struct zero { // Fixed size Eigen::Matrix type -template -struct is_group > : public boost::true_type { +template +struct is_group > : public boost::true_type { }; -template -struct is_manifold > : public boost::true_type { +template +struct is_manifold > : public boost::true_type{ }; -template -struct dimension > : public boost::integral_constant +struct dimension > : public boost::integral_constant { //TODO after switch to c++11 : the above should should be extracted to a constexpr function // for readability and to reduce code duplication }; -template -struct zero > { +template +struct zero > { BOOST_STATIC_ASSERT_MSG((M!=Eigen::Dynamic && N!=Eigen::Dynamic), "traits::zero is only supported for fixed-size matrices"); static Eigen::Matrix value() { diff --git a/gtsam/geometry/Cal3Bundler.h b/gtsam/geometry/Cal3Bundler.h index 396659582..4c77fdf23 100644 --- a/gtsam/geometry/Cal3Bundler.h +++ b/gtsam/geometry/Cal3Bundler.h @@ -189,15 +189,15 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; template<> -struct zero { +struct GTSAM_EXPORT zero { static Cal3Bundler value() { return Cal3Bundler(0, 0, 0); } diff --git a/gtsam/geometry/Cal3DS2.h b/gtsam/geometry/Cal3DS2.h index 95524e115..fb338431a 100644 --- a/gtsam/geometry/Cal3DS2.h +++ b/gtsam/geometry/Cal3DS2.h @@ -111,11 +111,11 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/Cal3Unified.h b/gtsam/geometry/Cal3Unified.h index fb99592f7..d65093847 100644 --- a/gtsam/geometry/Cal3Unified.h +++ b/gtsam/geometry/Cal3Unified.h @@ -140,15 +140,15 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; template<> -struct zero { +struct GTSAM_EXPORT zero { static Cal3Unified value() { return Cal3Unified();} }; diff --git a/gtsam/geometry/Cal3_S2.h b/gtsam/geometry/Cal3_S2.h index cd1add116..2f0253e4f 100644 --- a/gtsam/geometry/Cal3_S2.h +++ b/gtsam/geometry/Cal3_S2.h @@ -241,15 +241,15 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; template<> -struct zero { +struct GTSAM_EXPORT zero { static Cal3_S2 value() { return Cal3_S2();} }; diff --git a/gtsam/geometry/CalibratedCamera.h b/gtsam/geometry/CalibratedCamera.h index 66d1c5125..c66941091 100644 --- a/gtsam/geometry/CalibratedCamera.h +++ b/gtsam/geometry/CalibratedCamera.h @@ -224,15 +224,15 @@ private: namespace traits { template<> -struct is_group : public boost::true_type { +struct GTSAM_EXPORT is_group : public boost::true_type{ }; template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/EssentialMatrix.h b/gtsam/geometry/EssentialMatrix.h index 8763504c0..d596001e5 100644 --- a/gtsam/geometry/EssentialMatrix.h +++ b/gtsam/geometry/EssentialMatrix.h @@ -200,15 +200,15 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; template<> -struct zero { +struct GTSAM_EXPORT zero { static EssentialMatrix value() { return EssentialMatrix();} }; diff --git a/gtsam/geometry/PinholeCamera.h b/gtsam/geometry/PinholeCamera.h index 83851e8c0..c5174ae65 100644 --- a/gtsam/geometry/PinholeCamera.h +++ b/gtsam/geometry/PinholeCamera.h @@ -663,16 +663,16 @@ private: namespace traits { template -struct is_manifold > : public boost::true_type { +struct GTSAM_EXPORT is_manifold > : public boost::true_type{ }; template -struct dimension > : public boost::integral_constant< +struct GTSAM_EXPORT dimension > : public boost::integral_constant< int, dimension::value + dimension::value> { }; template -struct zero > { +struct GTSAM_EXPORT zero > { static PinholeCamera value() { return PinholeCamera(zero::value(), zero::value()); diff --git a/gtsam/geometry/Point2.h b/gtsam/geometry/Point2.h index 59a18aed7..dc42a5564 100644 --- a/gtsam/geometry/Point2.h +++ b/gtsam/geometry/Point2.h @@ -252,15 +252,15 @@ inline Point2 operator*(double s, const Point2& p) {return p*s;} namespace traits { template<> -struct is_group : public boost::true_type { +struct GTSAM_EXPORT is_group : public boost::true_type{ }; template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/Point3.h b/gtsam/geometry/Point3.h index d490ccf8d..acdfcf784 100644 --- a/gtsam/geometry/Point3.h +++ b/gtsam/geometry/Point3.h @@ -253,15 +253,15 @@ namespace gtsam { namespace traits { template<> - struct is_group : public boost::true_type { + struct GTSAM_EXPORT is_group : public boost::true_type{ }; template<> - struct is_manifold : public boost::true_type { + struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> - struct dimension : public boost::integral_constant { + struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/Pose2.h b/gtsam/geometry/Pose2.h index 7aad66710..88456676d 100644 --- a/gtsam/geometry/Pose2.h +++ b/gtsam/geometry/Pose2.h @@ -323,11 +323,11 @@ GTSAM_EXPORT boost::optional align(const std::vector& pairs); namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/Pose3.h b/gtsam/geometry/Pose3.h index 001edb563..8275c2feb 100644 --- a/gtsam/geometry/Pose3.h +++ b/gtsam/geometry/Pose3.h @@ -356,15 +356,15 @@ GTSAM_EXPORT boost::optional align(const std::vector& pairs); namespace traits { template<> -struct is_group : public boost::true_type { +struct GTSAM_EXPORT is_group : public boost::true_type{ }; template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/Rot2.h b/gtsam/geometry/Rot2.h index c5d6141b6..fe3d72c19 100644 --- a/gtsam/geometry/Rot2.h +++ b/gtsam/geometry/Rot2.h @@ -245,15 +245,15 @@ namespace gtsam { namespace traits { template<> - struct is_group : public boost::true_type { + struct GTSAM_EXPORT is_group : public boost::true_type{ }; template<> - struct is_manifold : public boost::true_type { + struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> - struct dimension : public boost::integral_constant { + struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/Rot3.h b/gtsam/geometry/Rot3.h index 4f40d164d..8f3ab9fbd 100644 --- a/gtsam/geometry/Rot3.h +++ b/gtsam/geometry/Rot3.h @@ -492,15 +492,15 @@ namespace gtsam { namespace traits { template<> - struct is_group : public boost::true_type { + struct GTSAM_EXPORT is_group : public boost::true_type{ }; template<> - struct is_manifold : public boost::true_type { + struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> - struct dimension : public boost::integral_constant { + struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; } diff --git a/gtsam/geometry/StereoCamera.h b/gtsam/geometry/StereoCamera.h index 6b290edac..9c326a8d2 100644 --- a/gtsam/geometry/StereoCamera.h +++ b/gtsam/geometry/StereoCamera.h @@ -157,15 +157,15 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; template<> -struct zero { +struct GTSAM_EXPORT zero { static StereoCamera value() { return StereoCamera();} }; diff --git a/gtsam/geometry/Unit3.h b/gtsam/geometry/Unit3.h index d28c9b4a8..d04e57d4b 100644 --- a/gtsam/geometry/Unit3.h +++ b/gtsam/geometry/Unit3.h @@ -161,15 +161,15 @@ private: namespace traits { template<> -struct is_manifold : public boost::true_type { +struct GTSAM_EXPORT is_manifold : public boost::true_type{ }; template<> -struct dimension : public boost::integral_constant { +struct GTSAM_EXPORT dimension : public boost::integral_constant{ }; template<> -struct zero { +struct GTSAM_EXPORT zero { static Unit3 value() { return Unit3(); }