g2o
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
g2o
examples
interactive_slam
g2o_interactive
graph_optimizer_sparse_online.h
Go to the documentation of this file.
1
// g2o - General Graph Optimization
2
// Copyright (C) 2011 R. Kuemmerle, G. Grisetti, W. Burgard
3
// All rights reserved.
4
//
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are
7
// met:
8
//
9
// * Redistributions of source code must retain the above copyright notice,
10
// this list of conditions and the following disclaimer.
11
// * Redistributions in binary form must reproduce the above copyright
12
// notice, this list of conditions and the following disclaimer in the
13
// documentation and/or other materials provided with the distribution.
14
//
15
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
16
// IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17
// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
18
// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
19
// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
21
// TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
22
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
24
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
27
#ifndef G2O_GRAPH_OPTIMIZER_SPARSE_ONLINE_H
28
#define G2O_GRAPH_OPTIMIZER_SPARSE_ONLINE_H
29
30
#include "
g2o_interactive_api.h
"
31
#include "
g2o/core/sparse_optimizer.h
"
32
33
namespace
g2o
{
34
35
class
Solver;
36
37
class
G2O_INTERACTIVE_API
SparseOptimizerOnline
:
public
SparseOptimizer
38
{
39
public
:
40
explicit
SparseOptimizerOnline
(
bool
pcg=
false
);
41
virtual
~
SparseOptimizerOnline
();
42
43
int
optimize(
int
iterations,
bool
online =
false
);
44
45
virtual
bool
updateInitialization(
HyperGraph::VertexSet
& vset,
HyperGraph::EdgeSet
& eset);
46
47
void
update(
double
* update);
48
49
virtual
bool
initSolver(
int
dimension,
int
batchEveryN);
50
51
public
:
52
int
slamDimension
;
53
54
HyperGraph::EdgeSet
*
newEdges
;
55
56
bool
batchStep
;
57
bool
vizWithGnuplot
;
58
59
virtual
void
gnuplotVisualization();
60
61
protected
:
62
FILE*
_gnuplot
;
63
bool
_usePcg
;
64
Solver
*
_underlyingSolver
;
65
};
66
67
}
// end namespace
68
69
#endif
g2o::HyperGraph::VertexSet
std::set< Vertex * > VertexSet
Definition:
hyper_graph.h:136
g2o::SparseOptimizerOnline
Definition:
graph_optimizer_sparse_online.h:37
g2o_interactive_api.h
g2o::SparseOptimizerOnline::_gnuplot
FILE * _gnuplot
Definition:
graph_optimizer_sparse_online.h:62
g2o::HyperGraph::EdgeSet
std::set< Edge * > EdgeSet
Definition:
hyper_graph.h:135
g2o
Definition:
dl_wrapper.cpp:54
g2o::SparseOptimizerOnline::newEdges
HyperGraph::EdgeSet * newEdges
Definition:
graph_optimizer_sparse_online.h:54
g2o::SparseOptimizerOnline::_usePcg
bool _usePcg
Definition:
graph_optimizer_sparse_online.h:63
sparse_optimizer.h
g2o::SparseOptimizerOnline::vizWithGnuplot
bool vizWithGnuplot
Definition:
graph_optimizer_sparse_online.h:57
g2o::Solver
Generic interface for a sparse solver operating on a graph which solves one iteration of the lineariz...
Definition:
solver.h:44
g2o::SparseOptimizer
Definition:
sparse_optimizer.h:46
g2o::SparseOptimizerOnline::_underlyingSolver
Solver * _underlyingSolver
Definition:
graph_optimizer_sparse_online.h:64
g2o::SparseOptimizerOnline::batchStep
bool batchStep
Definition:
graph_optimizer_sparse_online.h:56
g2o::SparseOptimizerOnline::slamDimension
int slamDimension
Definition:
graph_optimizer_sparse_online.h:52
G2O_INTERACTIVE_API
#define G2O_INTERACTIVE_API
Definition:
g2o_interactive_api.h:20
Generated on Mon Mar 18 2019 20:14:38 for g2o by
1.8.11