Added wrapping for NonlinearFactor to allow for access to keys from an individual key
parent
b2debfbc3a
commit
cbc5ee6c18
24
gtsam.h
24
gtsam.h
|
@ -662,6 +662,15 @@ class NonlinearFactorGraph {
|
|||
void print(string s) const;
|
||||
};
|
||||
|
||||
class NonlinearFactor {
|
||||
// NonlinearFactor(); // FIXME: don't use this - creates an abstract class
|
||||
void print(string s) const;
|
||||
void equals(const gtsam::NonlinearFactor& other, double tol) const;
|
||||
gtsam::KeyVector keys() const;
|
||||
size_t size() const;
|
||||
size_t dim() const;
|
||||
};
|
||||
|
||||
class Values {
|
||||
Values();
|
||||
size_t size() const;
|
||||
|
@ -730,6 +739,7 @@ class Graph {
|
|||
bool empty() const;
|
||||
void remove(size_t i);
|
||||
size_t nrFactors() const;
|
||||
gtsam::NonlinearFactor* at(size_t i) const;
|
||||
|
||||
// NonlinearFactorGraph
|
||||
double error(const pose2SLAM::Values& values) const;
|
||||
|
@ -780,6 +790,7 @@ class Graph {
|
|||
bool empty() const;
|
||||
void remove(size_t i);
|
||||
size_t nrFactors() const;
|
||||
gtsam::NonlinearFactor* at(size_t i) const;
|
||||
|
||||
// NonlinearFactorGraph
|
||||
double error(const pose3SLAM::Values& values) const;
|
||||
|
@ -827,6 +838,7 @@ class Graph {
|
|||
bool empty() const;
|
||||
void remove(size_t i);
|
||||
size_t nrFactors() const;
|
||||
gtsam::NonlinearFactor* at(size_t i) const;
|
||||
|
||||
// NonlinearFactorGraph
|
||||
double error(const planarSLAM::Values& values) const;
|
||||
|
@ -860,6 +872,9 @@ class Odometry {
|
|||
// Simulated2D
|
||||
//*************************************************************************
|
||||
|
||||
// FIXME: Simulated* domains are not actually installed, so this should be removed
|
||||
// from the toolbox
|
||||
|
||||
#include <tests/simulated2D.h>
|
||||
namespace simulated2D {
|
||||
|
||||
|
@ -935,7 +950,14 @@ class Values {
|
|||
class Graph {
|
||||
Graph();
|
||||
|
||||
void print(string s) const;
|
||||
// FactorGraph
|
||||
void print(string s) const;
|
||||
bool equals(const visualSLAM::Graph& fg, double tol) const;
|
||||
size_t size() const;
|
||||
bool empty() const;
|
||||
void remove(size_t i);
|
||||
size_t nrFactors() const;
|
||||
gtsam::NonlinearFactor* at(size_t i) const;
|
||||
|
||||
double error(const visualSLAM::Values& values) const;
|
||||
gtsam::Ordering* orderingCOLAMD(const visualSLAM::Values& values) const;
|
||||
|
|
|
@ -157,8 +157,10 @@ template<class CONDITIONAL, class CLIQUE> class BayesTree;
|
|||
operator const std::vector<sharedFactor>&() const { return factors_; }
|
||||
|
||||
/** Get a specific factor by index */
|
||||
const sharedFactor operator[](size_t i) const { assert(i<factors_.size()); return factors_[i]; }
|
||||
sharedFactor& operator[](size_t i) { assert(i<factors_.size()); return factors_[i]; }
|
||||
const sharedFactor at(size_t i) const { assert(i<factors_.size()); return factors_[i]; }
|
||||
sharedFactor& at(size_t i) { assert(i<factors_.size()); return factors_[i]; }
|
||||
const sharedFactor operator[](size_t i) const { return at(i); }
|
||||
sharedFactor& operator[](size_t i) { return at(i); }
|
||||
|
||||
/** STL begin, so we can use BOOST_FOREACH */
|
||||
const_iterator begin() const { return factors_.begin();}
|
||||
|
|
Loading…
Reference in New Issue