Windows build fixes

release/4.3a0
Chris Beall 2014-11-23 13:01:56 -05:00
parent a6853f15e8
commit ecc763d9f0
16 changed files with 51 additions and 51 deletions

View File

@ -106,23 +106,23 @@ struct zero<double> {
// Fixed size Eigen::Matrix type
template<int M, int N, int Options>
struct is_group<Eigen::Matrix<double, M, N, Options> > : public boost::true_type {
template<int M, int N, int Options, int MaxRows, int MaxCols>
struct is_group<Eigen::Matrix<double, M, N, Options, MaxRows, MaxCols> > : public boost::true_type {
};
template<int M, int N, int Options>
struct is_manifold<Eigen::Matrix<double, M, N, Options> > : public boost::true_type {
template<int M, int N, int Options, int MaxRows, int MaxCols>
struct is_manifold<Eigen::Matrix<double, M, N, Options, MaxRows, MaxCols> > : public boost::true_type{
};
template<int M, int N, int Options>
struct dimension<Eigen::Matrix<double, M, N, Options> > : public boost::integral_constant<int,
template<int M, int N, int Options, int MaxRows, int MaxCols>
struct dimension<Eigen::Matrix<double, M, N, Options, MaxRows, MaxCols> > : public boost::integral_constant<int,
M == Eigen::Dynamic ? Eigen::Dynamic : (N == Eigen::Dynamic ? Eigen::Dynamic : M * N)> {
//TODO after switch to c++11 : the above should should be extracted to a constexpr function
// for readability and to reduce code duplication
};
template<int M, int N, int Options>
struct zero<Eigen::Matrix<double, M, N, Options> > {
template<int M, int N, int Options, int MaxRows, int MaxCols>
struct zero<Eigen::Matrix<double, M, N, Options, MaxRows, MaxCols> > {
BOOST_STATIC_ASSERT_MSG((M!=Eigen::Dynamic && N!=Eigen::Dynamic),
"traits::zero is only supported for fixed-size matrices");
static Eigen::Matrix<double, M, N, Options> value() {

View File

@ -189,15 +189,15 @@ private:
namespace traits {
template<>
struct is_manifold<Cal3Bundler> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Cal3Bundler> : public boost::true_type{
};
template<>
struct dimension<Cal3Bundler> : public boost::integral_constant<int, 3> {
struct GTSAM_EXPORT dimension<Cal3Bundler> : public boost::integral_constant<int, 3>{
};
template<>
struct zero<Cal3Bundler> {
struct GTSAM_EXPORT zero<Cal3Bundler> {
static Cal3Bundler value() {
return Cal3Bundler(0, 0, 0);
}

View File

@ -111,11 +111,11 @@ private:
namespace traits {
template<>
struct is_manifold<Cal3DS2> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Cal3DS2> : public boost::true_type{
};
template<>
struct dimension<Cal3DS2> : public boost::integral_constant<int, 9> {
struct GTSAM_EXPORT dimension<Cal3DS2> : public boost::integral_constant<int, 9>{
};
}

View File

@ -140,15 +140,15 @@ private:
namespace traits {
template<>
struct is_manifold<Cal3Unified> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Cal3Unified> : public boost::true_type{
};
template<>
struct dimension<Cal3Unified> : public boost::integral_constant<int, 10> {
struct GTSAM_EXPORT dimension<Cal3Unified> : public boost::integral_constant<int, 10>{
};
template<>
struct zero<Cal3Unified> {
struct GTSAM_EXPORT zero<Cal3Unified> {
static Cal3Unified value() { return Cal3Unified();}
};

View File

@ -241,15 +241,15 @@ private:
namespace traits {
template<>
struct is_manifold<Cal3_S2> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Cal3_S2> : public boost::true_type{
};
template<>
struct dimension<Cal3_S2> : public boost::integral_constant<int, 5> {
struct GTSAM_EXPORT dimension<Cal3_S2> : public boost::integral_constant<int, 5>{
};
template<>
struct zero<Cal3_S2> {
struct GTSAM_EXPORT zero<Cal3_S2> {
static Cal3_S2 value() { return Cal3_S2();}
};

View File

@ -224,15 +224,15 @@ private:
namespace traits {
template<>
struct is_group<CalibratedCamera> : public boost::true_type {
struct GTSAM_EXPORT is_group<CalibratedCamera> : public boost::true_type{
};
template<>
struct is_manifold<CalibratedCamera> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<CalibratedCamera> : public boost::true_type{
};
template<>
struct dimension<CalibratedCamera> : public boost::integral_constant<int, 6> {
struct GTSAM_EXPORT dimension<CalibratedCamera> : public boost::integral_constant<int, 6>{
};
}

View File

@ -200,15 +200,15 @@ private:
namespace traits {
template<>
struct is_manifold<EssentialMatrix> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<EssentialMatrix> : public boost::true_type{
};
template<>
struct dimension<EssentialMatrix> : public boost::integral_constant<int, 5> {
struct GTSAM_EXPORT dimension<EssentialMatrix> : public boost::integral_constant<int, 5>{
};
template<>
struct zero<EssentialMatrix> {
struct GTSAM_EXPORT zero<EssentialMatrix> {
static EssentialMatrix value() { return EssentialMatrix();}
};

View File

@ -663,16 +663,16 @@ private:
namespace traits {
template<typename Calibration>
struct is_manifold<PinholeCamera<Calibration> > : public boost::true_type {
struct GTSAM_EXPORT is_manifold<PinholeCamera<Calibration> > : public boost::true_type{
};
template<typename Calibration>
struct dimension<PinholeCamera<Calibration> > : public boost::integral_constant<
struct GTSAM_EXPORT dimension<PinholeCamera<Calibration> > : public boost::integral_constant<
int, dimension<Pose3>::value + dimension<Calibration>::value> {
};
template<typename Calibration>
struct zero<PinholeCamera<Calibration> > {
struct GTSAM_EXPORT zero<PinholeCamera<Calibration> > {
static PinholeCamera<Calibration> value() {
return PinholeCamera<Calibration>(zero<Pose3>::value(),
zero<Calibration>::value());

View File

@ -252,15 +252,15 @@ inline Point2 operator*(double s, const Point2& p) {return p*s;}
namespace traits {
template<>
struct is_group<Point2> : public boost::true_type {
struct GTSAM_EXPORT is_group<Point2> : public boost::true_type{
};
template<>
struct is_manifold<Point2> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Point2> : public boost::true_type{
};
template<>
struct dimension<Point2> : public boost::integral_constant<int, 2> {
struct GTSAM_EXPORT dimension<Point2> : public boost::integral_constant<int, 2>{
};
}

View File

@ -253,15 +253,15 @@ namespace gtsam {
namespace traits {
template<>
struct is_group<Point3> : public boost::true_type {
struct GTSAM_EXPORT is_group<Point3> : public boost::true_type{
};
template<>
struct is_manifold<Point3> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Point3> : public boost::true_type{
};
template<>
struct dimension<Point3> : public boost::integral_constant<int, 3> {
struct GTSAM_EXPORT dimension<Point3> : public boost::integral_constant<int, 3>{
};
}

View File

@ -323,11 +323,11 @@ GTSAM_EXPORT boost::optional<Pose2> align(const std::vector<Point2Pair>& pairs);
namespace traits {
template<>
struct is_manifold<Pose2> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Pose2> : public boost::true_type{
};
template<>
struct dimension<Pose2> : public boost::integral_constant<int, 3> {
struct GTSAM_EXPORT dimension<Pose2> : public boost::integral_constant<int, 3>{
};
}

View File

@ -356,15 +356,15 @@ GTSAM_EXPORT boost::optional<Pose3> align(const std::vector<Point3Pair>& pairs);
namespace traits {
template<>
struct is_group<Pose3> : public boost::true_type {
struct GTSAM_EXPORT is_group<Pose3> : public boost::true_type{
};
template<>
struct is_manifold<Pose3> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Pose3> : public boost::true_type{
};
template<>
struct dimension<Pose3> : public boost::integral_constant<int, 6> {
struct GTSAM_EXPORT dimension<Pose3> : public boost::integral_constant<int, 6>{
};
}

View File

@ -245,15 +245,15 @@ namespace gtsam {
namespace traits {
template<>
struct is_group<Rot2> : public boost::true_type {
struct GTSAM_EXPORT is_group<Rot2> : public boost::true_type{
};
template<>
struct is_manifold<Rot2> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Rot2> : public boost::true_type{
};
template<>
struct dimension<Rot2> : public boost::integral_constant<int, 1> {
struct GTSAM_EXPORT dimension<Rot2> : public boost::integral_constant<int, 1>{
};
}

View File

@ -492,15 +492,15 @@ namespace gtsam {
namespace traits {
template<>
struct is_group<Rot3> : public boost::true_type {
struct GTSAM_EXPORT is_group<Rot3> : public boost::true_type{
};
template<>
struct is_manifold<Rot3> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Rot3> : public boost::true_type{
};
template<>
struct dimension<Rot3> : public boost::integral_constant<int, 3> {
struct GTSAM_EXPORT dimension<Rot3> : public boost::integral_constant<int, 3>{
};
}

View File

@ -157,15 +157,15 @@ private:
namespace traits {
template<>
struct is_manifold<StereoCamera> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<StereoCamera> : public boost::true_type{
};
template<>
struct dimension<StereoCamera> : public boost::integral_constant<int, 6> {
struct GTSAM_EXPORT dimension<StereoCamera> : public boost::integral_constant<int, 6>{
};
template<>
struct zero<StereoCamera> {
struct GTSAM_EXPORT zero<StereoCamera> {
static StereoCamera value() { return StereoCamera();}
};

View File

@ -161,15 +161,15 @@ private:
namespace traits {
template<>
struct is_manifold<Unit3> : public boost::true_type {
struct GTSAM_EXPORT is_manifold<Unit3> : public boost::true_type{
};
template<>
struct dimension<Unit3> : public boost::integral_constant<int, 2> {
struct GTSAM_EXPORT dimension<Unit3> : public boost::integral_constant<int, 2>{
};
template<>
struct zero<Unit3> {
struct GTSAM_EXPORT zero<Unit3> {
static Unit3 value() {
return Unit3();
}