Go to the documentation of this file.00001
00028 #pragma once
00029
00030 #include <Eigen/Dense>
00031
00032 #include "SparseSystem.h"
00033
00034 namespace isam {
00035
00036 class Cholesky {
00037 public:
00038 virtual ~Cholesky() {}
00039
00047 virtual void factorize(const SparseSystem& Ab, Eigen::VectorXd* delta = NULL, double lambda = 0.) = 0;
00048
00054 virtual void get_R(SparseSystem& R) = 0;
00055
00060 virtual int* get_order() = 0;
00061
00062 static Cholesky* Create();
00063
00064 protected:
00065 Cholesky() {}
00066 };
00067
00068 }