diff --git a/gtsam/base/FastSet.h b/gtsam/base/FastSet.h index 0e54bbd19..871fbd85e 100644 --- a/gtsam/base/FastSet.h +++ b/gtsam/base/FastSet.h @@ -18,8 +18,6 @@ #pragma once -#include - #include #include #include @@ -45,8 +43,7 @@ struct FastSetTestableHelper; * @ingroup base */ template -class FastSet: public std::set, boost::fast_pool_allocator >, -public Testable > { +class FastSet: public std::set, boost::fast_pool_allocator > { public: diff --git a/gtsam/base/FixedVector.h b/gtsam/base/FixedVector.h index 8cb9ac076..4faa670b6 100644 --- a/gtsam/base/FixedVector.h +++ b/gtsam/base/FixedVector.h @@ -17,7 +17,6 @@ #pragma once -#include #include #include @@ -28,8 +27,7 @@ namespace gtsam { * size checking. */ template -class FixedVector : public Eigen::Matrix, - public Testable > { +class FixedVector : public Eigen::Matrix { public: typedef Eigen::Matrix Base; diff --git a/gtsam/base/Testable.h b/gtsam/base/Testable.h index b638e951a..7fa8bca80 100644 --- a/gtsam/base/Testable.h +++ b/gtsam/base/Testable.h @@ -11,7 +11,7 @@ /** * @file Testable.h - * @brief Abstract base class for values that can be used in unit tests + * @brief Concept check for values that can be used in unit tests * @author Frank Dellaert * * The necessary functions to implement for Testable are defined @@ -40,35 +40,13 @@ namespace gtsam { - /** - * The Testable class should be templated with the derived class, e.g. - * class Rot3 : public Testable. This allows us to define the - * input type of equals as a Rot3 as well. - * @ingroup base - */ - template - class Testable { - - private: - /** - * This concept check is to make sure these methods exist in derived classes - * This is as an alternative to declaring those methods virtual, which is slower - */ - static void concept(const Derived& d) { - const Derived *const_derived = static_cast(&d); - const_derived->print(std::string()); - const_derived->print(); - bool r; - r = const_derived->equals(*const_derived, 1.0); - r = const_derived->equals(*const_derived); - } - - }; // Testable class - /** - * A testable concept check to be placed in unit tests, rather than subclassing + * A testable concept check that should be placed in applicable unit + * tests and in generic algorithms. + * * See macros for details on using this structure * @ingroup base + * @tparam T is the type this constrains to be testable - assumes print() and equals() */ template class TestableConcept { @@ -83,7 +61,7 @@ namespace gtsam { bool r2 = d.equals(d); return r1 && r2; } - }; // Testable class + }; /** * This template works for any type with equals @@ -133,5 +111,6 @@ namespace gtsam { * NOTE: intentionally not in the gtsam namespace to allow for classes not in * the gtsam namespace to be more easily enforced as testable */ +/// TODO: find better name for "INST" macro, something like "UNIT" or similar #define GTSAM_CONCEPT_TESTABLE_INST(T) template class gtsam::TestableConcept; #define GTSAM_CONCEPT_TESTABLE_TYPE(T) typedef gtsam::TestableConcept _gtsam_TestableConcept_##T; diff --git a/gtsam/geometry/Point3.h b/gtsam/geometry/Point3.h index f2cc509a5..095a2d9fe 100644 --- a/gtsam/geometry/Point3.h +++ b/gtsam/geometry/Point3.h @@ -24,7 +24,6 @@ #include #include -#include #include namespace gtsam { @@ -33,7 +32,7 @@ namespace gtsam { * A 3D point * @ingroup geometry */ - class Point3: Testable, public Lie { + class Point3 { public: /// dimension of the variable - used to autodetect sizes static const size_t dimension = 3; diff --git a/gtsam/geometry/Pose3.h b/gtsam/geometry/Pose3.h index 6d90370f1..8b8659585 100644 --- a/gtsam/geometry/Pose3.h +++ b/gtsam/geometry/Pose3.h @@ -27,7 +27,7 @@ namespace gtsam { * A 3D pose (R,t) : (Rot3,Point3) * @ingroup geometry */ - class Pose3 : Testable, public Lie { + class Pose3 : public Lie { public: static const size_t dimension = 6; diff --git a/gtsam/geometry/Rot3.h b/gtsam/geometry/Rot3.h index 145ebed39..a37c58d86 100644 --- a/gtsam/geometry/Rot3.h +++ b/gtsam/geometry/Rot3.h @@ -32,7 +32,7 @@ typedef Eigen::Quaterniond Quaternion; * @brief 3D Rotations represented as rotation matrices * @ingroup geometry */ - class Rot3: Testable, public Lie { + class Rot3: public Lie { public: static const size_t dimension = 3; diff --git a/gtsam/geometry/tests/testCalibratedCamera.cpp b/gtsam/geometry/tests/testCalibratedCamera.cpp index 5e24b3eb6..080a23a81 100644 --- a/gtsam/geometry/tests/testCalibratedCamera.cpp +++ b/gtsam/geometry/tests/testCalibratedCamera.cpp @@ -18,6 +18,7 @@ #include #include +#include #include #include diff --git a/gtsam/geometry/tests/testPoint3.cpp b/gtsam/geometry/tests/testPoint3.cpp index 67d35986d..5f2aa32b0 100644 --- a/gtsam/geometry/tests/testPoint3.cpp +++ b/gtsam/geometry/tests/testPoint3.cpp @@ -15,6 +15,7 @@ */ #include +#include #include using namespace gtsam; diff --git a/gtsam/geometry/tests/testPose3.cpp b/gtsam/geometry/tests/testPose3.cpp index fd252d82e..e0f62bfa3 100644 --- a/gtsam/geometry/tests/testPose3.cpp +++ b/gtsam/geometry/tests/testPose3.cpp @@ -16,6 +16,7 @@ #include #include +#include #include #include #include diff --git a/gtsam/geometry/tests/testRot3.cpp b/gtsam/geometry/tests/testRot3.cpp index 278745d3d..06ca2747f 100644 --- a/gtsam/geometry/tests/testRot3.cpp +++ b/gtsam/geometry/tests/testRot3.cpp @@ -16,6 +16,7 @@ */ #include +#include #include #include #include diff --git a/gtsam/geometry/tests/testSimpleCamera.cpp b/gtsam/geometry/tests/testSimpleCamera.cpp index ae29652d2..b3df0d8f8 100644 --- a/gtsam/geometry/tests/testSimpleCamera.cpp +++ b/gtsam/geometry/tests/testSimpleCamera.cpp @@ -19,6 +19,7 @@ #include #include +#include #include #include diff --git a/gtsam/geometry/tests/testStereoCamera.cpp b/gtsam/geometry/tests/testStereoCamera.cpp index 6ad95254c..ae4248ce5 100644 --- a/gtsam/geometry/tests/testStereoCamera.cpp +++ b/gtsam/geometry/tests/testStereoCamera.cpp @@ -17,6 +17,7 @@ */ #include +#include #include #include diff --git a/gtsam/inference/BayesNet-inl.h b/gtsam/inference/BayesNet-inl.h index 72d314d2b..df9e74717 100644 --- a/gtsam/inference/BayesNet-inl.h +++ b/gtsam/inference/BayesNet-inl.h @@ -17,6 +17,7 @@ #pragma once +#include #include #include diff --git a/gtsam/inference/BayesNet.h b/gtsam/inference/BayesNet.h index 065b49c20..7b9a85122 100644 --- a/gtsam/inference/BayesNet.h +++ b/gtsam/inference/BayesNet.h @@ -26,7 +26,6 @@ #include #include -#include #include namespace gtsam { @@ -41,7 +40,7 @@ namespace gtsam { * todo: how to handle Bayes nets with an optimize function? Currently using global functions. */ template -class BayesNet: public Testable > { +class BayesNet { public: diff --git a/gtsam/inference/BayesTree.h b/gtsam/inference/BayesTree.h index 2008a48f6..6ed06842e 100644 --- a/gtsam/inference/BayesTree.h +++ b/gtsam/inference/BayesTree.h @@ -37,7 +37,7 @@ namespace gtsam { * \ingroup Multifrontal */ template - class BayesTree: public Testable > { + class BayesTree { public: @@ -147,7 +147,7 @@ namespace gtsam { typedef boost::shared_ptr sharedClique; // A convenience class for a list of shared cliques - struct Cliques : public std::list, public Testable { + struct Cliques : public std::list { void print(const std::string& s = "Cliques") const; bool equals(const Cliques& other, double tol = 1e-9) const; }; diff --git a/gtsam/inference/ClusterTree.h b/gtsam/inference/ClusterTree.h index 2d79706e2..f264bc010 100644 --- a/gtsam/inference/ClusterTree.h +++ b/gtsam/inference/ClusterTree.h @@ -26,7 +26,6 @@ #include #include -#include namespace gtsam { @@ -36,7 +35,7 @@ namespace gtsam { * each factor f_i is associated with a single cluster and scope(f_i) \sub C_k. */ template - class ClusterTree : public Testable > { + class ClusterTree { protected: diff --git a/gtsam/inference/EliminationTree.h b/gtsam/inference/EliminationTree.h index e6efb1cde..d203ace3f 100644 --- a/gtsam/inference/EliminationTree.h +++ b/gtsam/inference/EliminationTree.h @@ -34,7 +34,7 @@ namespace gtsam { * additionally identifies cliques in the chordal Bayes net. */ template -class EliminationTree: public Testable > { +class EliminationTree { public: diff --git a/gtsam/inference/Factor.h b/gtsam/inference/Factor.h index 55bf81237..7a6cf4d7f 100644 --- a/gtsam/inference/Factor.h +++ b/gtsam/inference/Factor.h @@ -25,7 +25,6 @@ #include #include #include -#include #include namespace gtsam { @@ -51,7 +50,7 @@ template class Conditional; * during symbolic elimination. GaussianFactor and NonlinearFactor are virtual. */ template -class Factor : public Testable > { +class Factor { public: diff --git a/gtsam/inference/FactorGraph-inl.h b/gtsam/inference/FactorGraph-inl.h index f9dda2869..3cd78d72d 100644 --- a/gtsam/inference/FactorGraph-inl.h +++ b/gtsam/inference/FactorGraph-inl.h @@ -22,6 +22,7 @@ #pragma once +#include #include #include #include diff --git a/gtsam/inference/FactorGraph.h b/gtsam/inference/FactorGraph.h index e24fde728..f2eb33767 100644 --- a/gtsam/inference/FactorGraph.h +++ b/gtsam/inference/FactorGraph.h @@ -38,7 +38,7 @@ namespace gtsam { * Templated on the type of factors and values structure. */ template - class FactorGraph: public Testable > { + class FactorGraph { public: typedef FACTOR FactorType; typedef boost::shared_ptr > shared_ptr; diff --git a/gtsam/inference/GenericSequentialSolver.h b/gtsam/inference/GenericSequentialSolver.h index 0e6ad6792..5e694878d 100644 --- a/gtsam/inference/GenericSequentialSolver.h +++ b/gtsam/inference/GenericSequentialSolver.h @@ -38,8 +38,7 @@ namespace gtsam { * Additionally, the first step of MFQR is symbolic sequential elimination. */ template - class GenericSequentialSolver: public Testable< - GenericSequentialSolver > { + class GenericSequentialSolver { protected: diff --git a/gtsam/inference/VariableSlots.h b/gtsam/inference/VariableSlots.h index abe753156..17ae4e7b7 100644 --- a/gtsam/inference/VariableSlots.h +++ b/gtsam/inference/VariableSlots.h @@ -19,7 +19,6 @@ #pragma once #include -#include #include #include @@ -55,7 +54,7 @@ namespace gtsam { * is not performed by this class. */ -class VariableSlots : public FastMap >, public Testable { +class VariableSlots : public FastMap > { public: diff --git a/gtsam/inference/tests/testBayesTree.cpp b/gtsam/inference/tests/testBayesTree.cpp index b1151f8d9..71021ef70 100644 --- a/gtsam/inference/tests/testBayesTree.cpp +++ b/gtsam/inference/tests/testBayesTree.cpp @@ -36,7 +36,8 @@ typedef BayesTree SymbolicBayesTree; ///* ************************************************************************* */ //// SLAM example from RSS sqrtSAM paper -static const Index _x3_=0, _x2_=1, _x1_=2, _l2_=3, _l1_=4; +static const Index _x3_=0, _x2_=1; +//static const Index _x1_=2, _l2_=3, _l1_=4; // unused //IndexConditional::shared_ptr // x3(new IndexConditional(_x3_)), // x2(new IndexConditional(_x2_,_x3_)), diff --git a/gtsam/inference/tests/testSymbolicBayesNet.cpp b/gtsam/inference/tests/testSymbolicBayesNet.cpp index 0d81d1588..20abb6a71 100644 --- a/gtsam/inference/tests/testSymbolicBayesNet.cpp +++ b/gtsam/inference/tests/testSymbolicBayesNet.cpp @@ -21,6 +21,7 @@ using namespace boost::assign; #include +#include #include #include diff --git a/gtsam/linear/Errors.h b/gtsam/linear/Errors.h index e7098d8bf..b51bf606d 100644 --- a/gtsam/linear/Errors.h +++ b/gtsam/linear/Errors.h @@ -24,7 +24,7 @@ namespace gtsam { /** vector of errors */ - class Errors : public std::list, public Testable { + class Errors : public std::list { public: diff --git a/gtsam/linear/GaussianConditional.h b/gtsam/linear/GaussianConditional.h index 0810dd384..5efeac9b0 100644 --- a/gtsam/linear/GaussianConditional.h +++ b/gtsam/linear/GaussianConditional.h @@ -22,10 +22,10 @@ #include #include +#include #include #include #include -#include // Forward declaration to friend unit tests class eliminate2JacobianFactorTest; diff --git a/gtsam/linear/GaussianFactorGraph.cpp b/gtsam/linear/GaussianFactorGraph.cpp index bcfa32610..056ea47ed 100644 --- a/gtsam/linear/GaussianFactorGraph.cpp +++ b/gtsam/linear/GaussianFactorGraph.cpp @@ -18,14 +18,14 @@ * @author Frank Dellaert */ +#include +#include +#include +#include #include #include #include #include -#include -#include -#include - using namespace std; using namespace gtsam; diff --git a/gtsam/linear/NoiseModel.h b/gtsam/linear/NoiseModel.h index 184a599bf..c690088b1 100644 --- a/gtsam/linear/NoiseModel.h +++ b/gtsam/linear/NoiseModel.h @@ -19,7 +19,6 @@ #pragma once #include -#include #include namespace gtsam { @@ -43,7 +42,7 @@ namespace gtsam { * Noise models must implement a 'whiten' function to normalize an error vector, * and an 'unwhiten' function to unnormalize an error vector. */ - class Base : public Testable { + class Base { public: typedef boost::shared_ptr shared_ptr; diff --git a/gtsam/linear/VectorValues.h b/gtsam/linear/VectorValues.h index a0dba25d6..eeca4026c 100644 --- a/gtsam/linear/VectorValues.h +++ b/gtsam/linear/VectorValues.h @@ -17,7 +17,6 @@ #pragma once -#include #include #include @@ -38,7 +37,7 @@ namespace gtsam { * Access is through the variable index j, and returns a SubVector, * which is a view on the underlying data structure. */ - class VectorValues: public Testable { + class VectorValues { protected: Vector values_; std::vector varStarts_; // start at 0 with size nVars + 1 diff --git a/gtsam/linear/tests/testErrors.cpp b/gtsam/linear/tests/testErrors.cpp index 438ae3623..43c7c0099 100644 --- a/gtsam/linear/tests/testErrors.cpp +++ b/gtsam/linear/tests/testErrors.cpp @@ -19,6 +19,7 @@ using namespace boost::assign; #include +#include #include using namespace std; diff --git a/gtsam/linear/tests/testGaussianFactorGraph.cpp b/gtsam/linear/tests/testGaussianFactorGraph.cpp index 87cfc5c33..89a0ccdad 100644 --- a/gtsam/linear/tests/testGaussianFactorGraph.cpp +++ b/gtsam/linear/tests/testGaussianFactorGraph.cpp @@ -31,7 +31,9 @@ using namespace std; using namespace gtsam; using namespace boost; +#ifdef BROKEN static const Index _x0_=0, _x1_=1, _x2_=2, _x3_=3, _x4_=4, _x_=5, _y_=6, _l1_=7, _l11_=8; +#endif static SharedDiagonal sigma0_1 = sharedSigma(2,0.1), sigma_02 = sharedSigma(2,0.2), diff --git a/gtsam/linear/tests/testNoiseModel.cpp b/gtsam/linear/tests/testNoiseModel.cpp index 1f97c9eb1..38e309ab5 100644 --- a/gtsam/linear/tests/testNoiseModel.cpp +++ b/gtsam/linear/tests/testNoiseModel.cpp @@ -41,10 +41,10 @@ static Matrix Sigma = Matrix_(3, 3, var, 0.0, 0.0, 0.0, var, 0.0, 0.0, 0.0, var); -static Matrix Q = Matrix_(3, 3, - prc, 0.0, 0.0, - 0.0, prc, 0.0, - 0.0, 0.0, prc); +//static Matrix Q = Matrix_(3, 3, +// prc, 0.0, 0.0, +// 0.0, prc, 0.0, +// 0.0, 0.0, prc); static double inf = std::numeric_limits::infinity(); diff --git a/gtsam/linear/tests/testVectorValues.cpp b/gtsam/linear/tests/testVectorValues.cpp index 1746552c5..9e348c628 100644 --- a/gtsam/linear/tests/testVectorValues.cpp +++ b/gtsam/linear/tests/testVectorValues.cpp @@ -18,6 +18,7 @@ #include +#include #include #include diff --git a/gtsam/nonlinear/ISAM2.h b/gtsam/nonlinear/ISAM2.h index 734dbf87c..812bc340b 100644 --- a/gtsam/nonlinear/ISAM2.h +++ b/gtsam/nonlinear/ISAM2.h @@ -22,12 +22,9 @@ #include #include #include -//#include -//#include #include #include -#include #include #include #include diff --git a/gtsam/nonlinear/Key.h b/gtsam/nonlinear/Key.h index 20416c337..de609d413 100644 --- a/gtsam/nonlinear/Key.h +++ b/gtsam/nonlinear/Key.h @@ -27,8 +27,6 @@ #include #endif -#include - #define ALPHA '\224' namespace gtsam { @@ -39,7 +37,7 @@ namespace gtsam { * 2) the character constant used for its string representation */ template -class TypedSymbol: Testable > { +class TypedSymbol { protected: size_t j_; @@ -59,6 +57,8 @@ public: j_(j) { } + virtual ~TypedSymbol() {} + // Get stuff: size_t index() const { @@ -120,7 +120,7 @@ class TypedLabeledSymbol; * keys when linearizing a nonlinear factor graph. This key is not type * safe, so cannot be used with any Nonlinear* classes. */ -class Symbol: Testable { +class Symbol { protected: unsigned char c_; size_t j_; @@ -251,8 +251,7 @@ template std::list keys2symbols(std::list keys) { * index */ template -class TypedLabeledSymbol: public TypedSymbol , Testable< - TypedLabeledSymbol > { +class TypedLabeledSymbol: public TypedSymbol { protected: // Label diff --git a/gtsam/nonlinear/LieValues.h b/gtsam/nonlinear/LieValues.h index 63687b984..f23b08daf 100644 --- a/gtsam/nonlinear/LieValues.h +++ b/gtsam/nonlinear/LieValues.h @@ -28,7 +28,6 @@ #include #include -#include #include namespace boost { template class optional; } @@ -47,7 +46,7 @@ namespace gtsam { * labels (example: Pose2, Point2, etc) */ template - class LieValues : public Testable > { + class LieValues { public: diff --git a/gtsam/nonlinear/Ordering.h b/gtsam/nonlinear/Ordering.h index 34d3acabb..b1ffd5017 100644 --- a/gtsam/nonlinear/Ordering.h +++ b/gtsam/nonlinear/Ordering.h @@ -19,7 +19,6 @@ #pragma once #include -#include #include #include @@ -32,7 +31,7 @@ namespace gtsam { /** * An ordering is a map from symbols (non-typed keys) to integer indices */ -class Ordering : Testable { +class Ordering { protected: typedef boost::fast_pool_allocator > Allocator; typedef std::map, Allocator> Map; @@ -204,7 +203,7 @@ private: * @class Unordered * @brief a set of unordered indices */ -class Unordered: public std::set, public Testable { +class Unordered: public std::set { public: /** Default constructor creates empty ordering */ Unordered() { } diff --git a/gtsam/nonlinear/TupleValues.h b/gtsam/nonlinear/TupleValues.h index e49cc6a90..2e55ecf8a 100644 --- a/gtsam/nonlinear/TupleValues.h +++ b/gtsam/nonlinear/TupleValues.h @@ -47,7 +47,7 @@ namespace gtsam { * operates on the "first" values. TupleValuesEnd contains only the specialized version. */ template - class TupleValues : public Testable > { + class TupleValues { protected: // Data for internal valuess @@ -254,7 +254,7 @@ namespace gtsam { * of a recursive structure */ template - class TupleValuesEnd : public Testable > { + class TupleValuesEnd { protected: // Data for internal valuess diff --git a/gtsam/nonlinear/tests/testLieValues.cpp b/gtsam/nonlinear/tests/testLieValues.cpp index 3c7850041..a4e0cc698 100644 --- a/gtsam/nonlinear/tests/testLieValues.cpp +++ b/gtsam/nonlinear/tests/testLieValues.cpp @@ -20,8 +20,9 @@ #include // for operator += using namespace boost::assign; -#include +#include #include +#include using namespace gtsam; using namespace std; diff --git a/gtsam/slam/tests/testGeneralSFMFactor.cpp b/gtsam/slam/tests/testGeneralSFMFactor.cpp index 395d18a28..096e0d13b 100644 --- a/gtsam/slam/tests/testGeneralSFMFactor.cpp +++ b/gtsam/slam/tests/testGeneralSFMFactor.cpp @@ -15,6 +15,7 @@ using namespace boost; // Magically casts strings like "x3" to a Symbol('x',3) key, see Key.h #define GTSAM_MAGIC_KEY +#include #include #include #include diff --git a/gtsam/slam/tests/testGeneralSFMFactor_Cal3Bundler.cpp b/gtsam/slam/tests/testGeneralSFMFactor_Cal3Bundler.cpp index 4adcc6e4c..afc5fa526 100644 --- a/gtsam/slam/tests/testGeneralSFMFactor_Cal3Bundler.cpp +++ b/gtsam/slam/tests/testGeneralSFMFactor_Cal3Bundler.cpp @@ -15,6 +15,7 @@ using namespace boost; // Magically casts strings like "x3" to a Symbol('x',3) key, see Key.h #define GTSAM_MAGIC_KEY +#include #include #include #include diff --git a/gtsam/slam/tests/testPose2SLAM.cpp b/gtsam/slam/tests/testPose2SLAM.cpp index 8cd0428a8..8febe382b 100644 --- a/gtsam/slam/tests/testPose2SLAM.cpp +++ b/gtsam/slam/tests/testPose2SLAM.cpp @@ -40,7 +40,8 @@ static noiseModel::Gaussian::shared_ptr covariance( sx*sx, 0.0, 0.0, 0.0, sy*sy, 0.0, 0.0, 0.0, st*st - ))), I3(noiseModel::Unit::Create(3)); + ))); +//static noiseModel::Gaussian::shared_ptr I3(noiseModel::Unit::Create(3)); /* ************************************************************************* */ TEST( Pose2Graph, constructor ) diff --git a/gtsam/slam/tests/testSimulated2D.cpp b/gtsam/slam/tests/testSimulated2D.cpp index 553c6a22c..8c0f02d8f 100644 --- a/gtsam/slam/tests/testSimulated2D.cpp +++ b/gtsam/slam/tests/testSimulated2D.cpp @@ -19,6 +19,7 @@ #include #include +#include #include #include diff --git a/gtsam/slam/tests/testSimulated2DOriented.cpp b/gtsam/slam/tests/testSimulated2DOriented.cpp index f0c0ee92c..4cc517b34 100644 --- a/gtsam/slam/tests/testSimulated2DOriented.cpp +++ b/gtsam/slam/tests/testSimulated2DOriented.cpp @@ -19,6 +19,7 @@ #include #include +#include #include #include #include diff --git a/gtsam/slam/tests/testSimulated3D.cpp b/gtsam/slam/tests/testSimulated3D.cpp index 71f34a8c8..f94cafb54 100644 --- a/gtsam/slam/tests/testSimulated3D.cpp +++ b/gtsam/slam/tests/testSimulated3D.cpp @@ -18,8 +18,9 @@ #include #include -#include +#include #include +#include #include using namespace gtsam; diff --git a/tests/testGaussianBayesNet.cpp b/tests/testGaussianBayesNet.cpp index 68bfa4e03..8b6199ec5 100644 --- a/tests/testGaussianBayesNet.cpp +++ b/tests/testGaussianBayesNet.cpp @@ -28,8 +28,9 @@ using namespace boost::assign; // Magically casts strings like "x3" to a Symbol('x',3) key, see Key.h #define GTSAM_MAGIC_KEY -#include +#include #include +#include #include #include diff --git a/tests/testGaussianFactor.cpp b/tests/testGaussianFactor.cpp index bd3403802..1260c51a2 100644 --- a/tests/testGaussianFactor.cpp +++ b/tests/testGaussianFactor.cpp @@ -30,6 +30,7 @@ using namespace boost::assign; #define GTSAM_MAGIC_KEY #include +#include #include #include #include diff --git a/tests/testGaussianFactorGraph.cpp b/tests/testGaussianFactorGraph.cpp index 0afeeca19..4e25d954d 100644 --- a/tests/testGaussianFactorGraph.cpp +++ b/tests/testGaussianFactorGraph.cpp @@ -32,11 +32,12 @@ using namespace boost::assign; #define GTSAM_MAGIC_KEY #include -#include -#include +#include #include #include +#include #include +#include using namespace gtsam; using namespace example; diff --git a/tests/testNonlinearFactor.cpp b/tests/testNonlinearFactor.cpp index d10a83c66..396e325de 100644 --- a/tests/testNonlinearFactor.cpp +++ b/tests/testNonlinearFactor.cpp @@ -28,6 +28,7 @@ // Magically casts strings like "x3" to a Symbol('x',3) key, see Key.h #define GTSAM_MAGIC_KEY +#include #include #include #include diff --git a/tests/testNonlinearFactorGraph.cpp b/tests/testNonlinearFactorGraph.cpp index 98fb193f7..31f9c495e 100644 --- a/tests/testNonlinearFactorGraph.cpp +++ b/tests/testNonlinearFactorGraph.cpp @@ -30,6 +30,7 @@ using namespace boost::assign; // Magically casts strings like "x3" to a Symbol('x',3) key, see Key.h #define GTSAM_MAGIC_KEY +#include #include #include #include diff --git a/tests/testSymbolicBayesNet.cpp b/tests/testSymbolicBayesNet.cpp index 4b700d1dc..de51cb8dc 100644 --- a/tests/testSymbolicBayesNet.cpp +++ b/tests/testSymbolicBayesNet.cpp @@ -24,6 +24,7 @@ using namespace boost::assign; // Magically casts strings like "x3" to a Symbol('x',3) key, see Key.h #define GTSAM_MAGIC_KEY +#include #include #include #include