47   typedef std::vector<sba::Node2d, Eigen::aligned_allocator<sba::Node2d> > NodeVector;
    49   ROS_INFO(
"Calling doSPA for loop closure");
    51   ROS_INFO(
"Finished doSPA for loop closure");
    55     karto::Pose2 pose(iter->trans(0), iter->trans(1), iter->arot);
    56     corrections.push_back(std::make_pair(iter->nodeId, pose));
    77   Eigen::Matrix<double,3,3> m;
    78   m(0,0) = precisionMatrix(0,0);
    79   m(0,1) = m(1,0) = precisionMatrix(0,1);
    80   m(0,2) = m(2,0) = precisionMatrix(0,2);
    81   m(1,1) = precisionMatrix(1,1);
    82   m(1,2) = m(2,1) = precisionMatrix(1,2);
    83   m(2,2) = precisionMatrix(2,2);
 int doSPA(int niter, double sLambda=1.0e-4, int useCSparse=SBA_SPARSE_CHOLESKY, double initTol=1.0e-8, int CGiters=50)
kt_double GetHeading() const 
virtual const karto::ScanSolver::IdPoseVector & GetCorrections() const 
std::vector< Node2d, Eigen::aligned_allocator< Node2d > > getNodes()
virtual void AddNode(karto::Vertex< karto::LocalizedRangeScan > *pVertex)
const Matrix3 & GetCovariance()
#define forEach(listtype, list)
kt_int32s GetUniqueId() const 
karto::ScanSolver::IdPoseVector corrections
std::vector< std::pair< kt_int32s, Pose2 > > IdPoseVector
virtual void AddConstraint(karto::Edge< karto::LocalizedRangeScan > *pEdge)
Vertex< T > * GetSource() const 
int addNode(const Vector3d &pos, int id)
Vertex< T > * GetTarget() const 
bool addConstraint(int nd0, int nd1, const Vector3d &mean, const Matrix3d &prec)
const Pose2 & GetCorrectedPose() const 
const Pose2 & GetPoseDifference()