linear_solver.h
Go to the documentation of this file.
00001 // g2o - General Graph Optimization
00002 // Copyright (C) 2011 R. Kuemmerle, G. Grisetti, W. Burgard
00003 // 
00004 // g2o is free software: you can redistribute it and/or modify
00005 // it under the terms of the GNU Lesser General Public License as published
00006 // by the Free Software Foundation, either version 3 of the License, or
00007 // (at your option) any later version.
00008 // 
00009 // g2o is distributed in the hope that it will be useful,
00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012 // GNU Lesser General Public License for more details.
00013 // 
00014 // You should have received a copy of the GNU Lesser General Public License
00015 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
00016 
00017 #ifndef LINEAR_SOLVER_H
00018 #define LINEAR_SOLVER_H
00019 #include "sparse_block_matrix.h"
00020 
00021 namespace g2o {
00022 
00030 template <typename MatrixType>
00031 class LinearSolver
00032 {
00033   public:
00034     LinearSolver() {};
00035     virtual ~LinearSolver() {}
00036 
00041     virtual bool init() = 0;
00042 
00048     virtual bool solve
00049        (const SparseBlockMatrix<MatrixType>& A, double* x, double* b) = 0;
00050 
00055     virtual bool solveBlocks
00056        (double**&blocks, const SparseBlockMatrix<MatrixType>& A)
00057     {
00058        (void) blocks;
00059        (void) A;
00060         return false; 
00061     }
00062 
00063 
00068     virtual bool solvePattern
00069     (
00070        SparseBlockMatrix<MatrixXd>& spinv,
00071        const std::vector<std::pair<int, int> >& blockIndices,
00072        const SparseBlockMatrix<MatrixType>& A
00073     )
00074     {
00075        (void) spinv;
00076        (void) blockIndices;
00077        (void) A;
00078        return false;
00079     }
00080 };
00081 
00082 } // end namespace
00083 
00084 #endif


re_vision
Author(s): Dorian Galvez-Lopez
autogenerated on Sun Jan 5 2014 11:31:38