gtsam  4.0.0
gtsam
ISAM.h
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2 
3  * GTSAM Copyright 2010, Georgia Tech Research Corporation,
4  * Atlanta, Georgia 30332-0415
5  * All Rights Reserved
6  * Authors: Frank Dellaert, et al. (see THANKS for the full author list)
7 
8  * See LICENSE for the license information
9 
10  * -------------------------------------------------------------------------- */
11 
18 // \callgraph
19 #pragma once
20 
21 #include <gtsam/global_includes.h>
22 
23 namespace gtsam {
24 
30  template<class BAYESTREE>
31  class ISAM: public BAYESTREE
32  {
33  public:
34 
35  typedef BAYESTREE Base;
36  typedef typename Base::BayesNetType BayesNetType;
37  typedef typename Base::FactorGraphType FactorGraphType;
38  typedef typename Base::Clique Clique;
39  typedef typename Base::sharedClique sharedClique;
40  typedef typename Base::Cliques Cliques;
41 
42  private:
43 
44  typedef typename Base::Eliminate Eliminate;
45  typedef typename Base::EliminationTraitsType EliminationTraitsType;
46 
47  public:
48 
51 
53  ISAM() {}
54 
56  ISAM(const Base& bayesTree) : Base(bayesTree) {}
57 
61 
67  void update(const FactorGraphType& newFactors, const Eliminate& function = EliminationTraitsType::DefaultEliminate);
68 
70  void update_internal(const FactorGraphType& newFactors, Cliques& orphans,
71  const Eliminate& function = EliminationTraitsType::DefaultEliminate);
72 
74 
75  };
76 
77 }
void update(const FactorGraphType &newFactors, const Eliminate &function=EliminationTraitsType::DefaultEliminate)
update the Bayes tree with a set of new factors, typically derived from measurements
Definition: ISAM-inst.h:62
ISAM()
Create an empty Bayes Tree.
Definition: ISAM.h:53
Included from all GTSAM files.
A Bayes tree with an update methods that implements the iSAM algorithm.
Definition: ISAM.h:31
ISAM(const Base &bayesTree)
Copy constructor.
Definition: ISAM.h:56
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
void update_internal(const FactorGraphType &newFactors, Cliques &orphans, const Eliminate &function=EliminationTraitsType::DefaultEliminate)
update_internal provides access to list of orphans for drawing purposes
Definition: ISAM-inst.h:27