27 #ifndef G2O_BASE_UNARY_EDGE_H 28 #define G2O_BASE_UNARY_EDGE_H 36 #include "g2o/config.h" 41 template <
int D,
typename E,
typename VertexXi>
48 typedef typename Eigen::Matrix<double, D, VertexXiType::Dimension, D==1?Eigen::RowMajor:Eigen::ColMajor>::AlignedMapType
JacobianXiOplusType;
58 virtual void resize(
size_t size);
79 virtual void mapHessianMemory(
double*,
int,
int,
bool) {assert(0 &&
"BaseUnaryEdge does not map memory of the Hessian");}
94 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
Eigen::Matrix< double, D, VertexXiType::Dimension, D==1?Eigen::RowMajor:Eigen::ColMajor >::AlignedMapType JacobianXiOplusType
virtual bool allVerticesFixed() const
BaseEdge< D, E >::ErrorVector ErrorVector
const JacobianXiOplusType & jacobianOplusXi() const
returns the result of the linearization in the manifold space for the node xi
static const int Dimension
std::set< Vertex * > VertexSet
virtual void constructQuadraticForm()
Eigen::Matrix< double, D, D, Eigen::ColMajor > InformationType
virtual void initialEstimate(const OptimizableGraph::VertexSet &from, OptimizableGraph::Vertex *to)
JacobianXiOplusType _jacobianOplusXi
Eigen::Matrix< double, D, 1, Eigen::ColMajor > ErrorVector
BaseEdge< D, E >::InformationType InformationType
virtual void resize(size_t size)
virtual void linearizeOplus()
BaseEdge< D, E >::Measurement Measurement
A general case Vertex for optimization.
virtual void mapHessianMemory(double *, int, int, bool)
provide memory workspace for computing the Jacobians
virtual OptimizableGraph::Vertex * createVertex(int i)
VertexContainer _vertices