Fixed compile errors on windows

release/4.3a0
Richard Roberts 2013-10-29 04:24:14 +00:00
parent 23cd20aa9b
commit 3c33e44c46
9 changed files with 29 additions and 30 deletions

View File

@ -56,7 +56,7 @@ struct LieMatrix : public Matrix, public DerivedValue<LieMatrix> {
/// @{
/** print @param s optional string naming the object */
void print(const std::string& name="") const;
GTSAM_EXPORT void print(const std::string& name="") const;
/** equality up to tolerance */
inline bool equals(const LieMatrix& expected, double tol=1e-5) const {

View File

@ -38,7 +38,7 @@ class DiscreteBayesTree;
class DiscreteJunctionTree;
/** Main elimination function for DiscreteFactorGraph */
std::pair<boost::shared_ptr<DiscreteConditional>, DecisionTreeFactor::shared_ptr>
GTSAM_EXPORT std::pair<boost::shared_ptr<DiscreteConditional>, DecisionTreeFactor::shared_ptr>
EliminateDiscrete(const DiscreteFactorGraph& factors, const Ordering& keys);
/* ************************************************************************* */
@ -62,7 +62,7 @@ template<> struct EliminationTraits<DiscreteFactorGraph>
* A Discrete Factor Graph is a factor graph where all factors are Discrete, i.e.
* Factor == DiscreteFactor
*/
class DiscreteFactorGraph: public FactorGraph<DiscreteFactor>,
class GTSAM_EXPORT DiscreteFactorGraph: public FactorGraph<DiscreteFactor>,
public EliminateableFactorGraph<DiscreteFactorGraph> {
public:
@ -120,16 +120,16 @@ public:
}
/** Return the set of variables involved in the factors (set union) */
GTSAM_EXPORT FastSet<Index> keys() const;
FastSet<Index> keys() const;
/** return product of all factors as a single factor */
GTSAM_EXPORT DecisionTreeFactor product() const;
DecisionTreeFactor product() const;
/** Evaluates the factor graph given values, returns the joint probability of the factor graph given specific instantiation of values*/
GTSAM_EXPORT double operator()(const DiscreteFactor::Values & values) const;
double operator()(const DiscreteFactor::Values & values) const;
/// print
GTSAM_EXPORT void print(const std::string& s = "DiscreteFactorGraph",
void print(const std::string& s = "DiscreteFactorGraph",
const IndexFormatter& formatter =DefaultIndexFormatter) const;
/** Solve the factor graph by performing variable elimination in COLAMD order using

View File

@ -62,7 +62,7 @@ TEST( GaussianBayesNet, optimize )
{
VectorValues actual = smallBayesNet.optimize();
VectorValues expected = map_list_of
VectorValues expected = map_list_of<Key, Vector>
(_x_, (Vec(1) << 4.0))
(_y_, (Vec(1) << 5.0));
@ -77,12 +77,12 @@ TEST( GaussianBayesNet, optimize3 )
// 5 1 5
// NOTE: we are supplying a new RHS here
VectorValues expected = map_list_of
VectorValues expected = map_list_of<Key, Vector>
(_x_, (Vec(1) << -1.0))
(_y_, (Vec(1) << 5.0));
// Test different RHS version
VectorValues gx = map_list_of
VectorValues gx = map_list_of<Key, Vector>
(_x_, (Vec(1) << 4.0))
(_y_, (Vec(1) << 5.0));
VectorValues actual = smallBayesNet.backSubstitute(gx);
@ -96,10 +96,10 @@ TEST( GaussianBayesNet, backSubstituteTranspose )
// 2 = 1 2
// 5 1 1 3
VectorValues
x = map_list_of
x = map_list_of<Key, Vector>
(_x_, (Vec(1) << 2.0))
(_y_, (Vec(1) << 5.0)),
expected = map_list_of
expected = map_list_of<Key, Vector>
(_x_, (Vec(1) << 2.0))
(_y_, (Vec(1) << 3.0));

View File

@ -98,7 +98,7 @@ TEST( GaussianBayesTree, eliminate )
/* ************************************************************************* */
TEST( GaussianBayesTree, optimizeMultiFrontal )
{
VectorValues expected = pair_list_of
VectorValues expected = pair_list_of<Key, Vector>
(x1, (Vec(1) << 0.))
(x2, (Vec(1) << 1.))
(x3, (Vec(1) << 0.))
@ -263,7 +263,7 @@ TEST(GaussianBayesTree, ComputeSteepestDescentPointBT) {
Vector expected = gradient * step;
// Known steepest descent point from Bayes' net version
VectorValues expectedFromBN = pair_list_of
VectorValues expectedFromBN = pair_list_of<Key, Vector>
(0, (Vec(2) << 0.000129034, 0.000688183))
(1, (Vec(2) << 0.0109679, 0.0253767))
(2, (Vec(2) << 0.0680441, 0.114496))

View File

@ -183,7 +183,7 @@ TEST( GaussianConditional, solve_simple )
VectorValues actual = map_list_of
(2, sx1); // parent
VectorValues expected = map_list_of
VectorValues expected = map_list_of<Key, Vector>
(2, sx1)
(1, (Vec(4) << -3.1,-3.4,-11.9,-13.2));
@ -219,7 +219,7 @@ TEST( GaussianConditional, solve_multifrontal )
VectorValues actual = map_list_of
(10, sl1); // parent
VectorValues expected = map_list_of
VectorValues expected = map_list_of<Key, Vector>
(1, (Vector)(Vec(2) << -3.1,-3.4))
(2, (Vector)(Vec(2) << -11.9,-13.2))
(10, sl1);
@ -257,10 +257,10 @@ TEST( GaussianConditional, solveTranspose ) {
// 5 1 1 3
VectorValues
x = map_list_of
x = map_list_of<Key, Vector>
(1, (Vec(1) << 2.))
(2, (Vec(1) << 5.)),
y = map_list_of
y = map_list_of<Key, Vector>
(1, (Vec(1) << 2.))
(2, (Vec(1) << 3.));

View File

@ -74,7 +74,7 @@ TEST(HessianFactor, ConversionConstructor)
HessianFactor actual(jacobian);
VectorValues values = pair_list_of
VectorValues values = pair_list_of<Key, Vector>
(0, (Vec(2) << 1.0, 2.0))
(1, (Vec(4) << 3.0, 4.0, 5.0, 6.0));
@ -89,7 +89,6 @@ TEST(HessianFactor, Constructor1)
Matrix G = Matrix_(2,2, 3.0, 5.0, 0.0, 6.0);
Vector g = (Vec(2) << -8.0, -9.0);
double f = 10.0;
HessianFactor factor(0, G, g, f);
// extract underlying parts
@ -98,7 +97,7 @@ TEST(HessianFactor, Constructor1)
EXPECT(assert_equal(g, Vector(factor.linearTerm())));
EXPECT_LONGS_EQUAL(1, (long)factor.size());
VectorValues dx = pair_list_of(0, (Vec(2) << 1.5, 2.5));
VectorValues dx = pair_list_of<Key, Vector>(0, (Vec(2) << 1.5, 2.5));
// error 0.5*(f - 2*x'*g + x'*G*x)
double expected = 80.375;
@ -162,7 +161,7 @@ TEST(HessianFactor, Constructor2)
EXPECT(assert_equal(G22, factor.info(factor.begin()+1, factor.begin()+1)));
// Check case when vector values is larger than factor
VectorValues dxLarge = pair_list_of
VectorValues dxLarge = pair_list_of<Key, Vector>
(0, dx0)
(1, dx1)
(2, (Vec(2) << 0.1, 0.2));

View File

@ -170,7 +170,7 @@ TEST(Values, expmap_a)
config0.insert(key1, LieVector(3, 1.0, 2.0, 3.0));
config0.insert(key2, LieVector(3, 5.0, 6.0, 7.0));
VectorValues increment = pair_list_of
VectorValues increment = pair_list_of<Key, Vector>
(key1, (Vec(3) << 1.0, 1.1, 1.2))
(key2, (Vec(3) << 1.3, 1.4, 1.5));
@ -188,8 +188,8 @@ TEST(Values, expmap_b)
config0.insert(key1, LieVector(3, 1.0, 2.0, 3.0));
config0.insert(key2, LieVector(3, 5.0, 6.0, 7.0));
VectorValues increment = pair_list_of
(key2, LieVector(3, 1.3, 1.4, 1.5));
VectorValues increment = pair_list_of<Key, Vector>
(key2, (Vec(3) << 1.3, 1.4, 1.5));
Values expected;
expected.insert(key1, LieVector(3, 1.0, 2.0, 3.0));
@ -241,7 +241,7 @@ TEST(Values, localCoordinates)
valuesA.insert(key1, LieVector(3, 1.0, 2.0, 3.0));
valuesA.insert(key2, LieVector(3, 5.0, 6.0, 7.0));
VectorValues expDelta = pair_list_of
VectorValues expDelta = pair_list_of<Key, Vector>
(key1, (Vec(3) << 0.1, 0.2, 0.3))
(key2, (Vec(3) << 0.4, 0.5, 0.6));

View File

@ -157,7 +157,7 @@ Point3 triangulateDLT(const std::vector<Pose3>& poses,
* @return Returns a Point3 on success, boost::none otherwise.
*/
template<class CALIBRATION>
GTSAM_UNSTABLE_EXPORT Point3 triangulatePoint3(const std::vector<Pose3>& poses,
Point3 triangulatePoint3(const std::vector<Pose3>& poses,
const std::vector<Point2>& measurements, const CALIBRATION& K,
double rank_tol = 1e-9, bool optimize = false) {

View File

@ -222,7 +222,7 @@ Values createValues() {
/* ************************************************************************* */
VectorValues createVectorValues() {
using namespace impl;
VectorValues c = boost::assign::pair_list_of
VectorValues c = boost::assign::pair_list_of<Key, Vector>
(_l1_, (Vec(2) << 0.0, -1.0))
(_x1_, (Vec(2) << 0.0, 0.0))
(_x2_, (Vec(2) << 1.5, 0.0));
@ -483,7 +483,7 @@ GaussianFactorGraph createSingleConstraintGraph() {
/* ************************************************************************* */
VectorValues createSingleConstraintValues() {
using namespace impl;
VectorValues config = boost::assign::pair_list_of
VectorValues config = boost::assign::pair_list_of<Key, Vector>
(_x_, (Vec(2) << 1.0, -1.0))
(_y_, (Vec(2) << 0.2, 0.1));
return config;
@ -547,7 +547,7 @@ GaussianFactorGraph createMultiConstraintGraph() {
/* ************************************************************************* */
VectorValues createMultiConstraintValues() {
using namespace impl;
VectorValues config = boost::assign::pair_list_of
VectorValues config = boost::assign::pair_list_of<Key, Vector>
(_x_, (Vec(2) << -2.0, 2.0))
(_y_, (Vec(2) << -0.1, 0.4))
(_z_, (Vec(2) <<-4.0, 5.0));