GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
SymbolicBayesTree.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 
19 #pragma once
20 
25 
26 namespace gtsam {
27 
28  // Forward declarations
29  class SymbolicConditional;
30 
31  /* ************************************************************************* */
33  class GTSAM_EXPORT SymbolicBayesTreeClique :
34  public BayesTreeCliqueBase<SymbolicBayesTreeClique, SymbolicFactorGraph>
35  {
36  public:
39  typedef std::shared_ptr<This> shared_ptr;
40  typedef std::weak_ptr<This> weak_ptr;
42  SymbolicBayesTreeClique(const std::shared_ptr<SymbolicConditional>& conditional) : Base(conditional) {}
43  };
44 
45  /* ************************************************************************* */
48  class GTSAM_EXPORT SymbolicBayesTree :
49  public BayesTree<SymbolicBayesTreeClique>
50  {
51  private:
53 
54  public:
55  typedef SymbolicBayesTree This;
56  typedef std::shared_ptr<This> shared_ptr;
57 
60 
62  bool equals(const This& other, double tol = 1e-9) const;
63 
64  private:
65 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION
66 
67  friend class boost::serialization::access;
68  template<class ARCHIVE>
69  void serialize(ARCHIVE & ar, const unsigned int /*version*/) {
70  ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
71  }
72 #endif
73  };
74 
76 template<> struct traits<SymbolicBayesTreeClique> : public Testable<SymbolicBayesTreeClique> {};
77 template<> struct traits<SymbolicBayesTree> : public Testable<SymbolicBayesTree> {};
78 
79 } //\ namespace gtsam
80 
A clique in a SymbolicBayesTree.
Definition: SymbolicBayesTree.h:33
std::string serialize(const T &input)
serializes to a string
Definition: serialization.h:113
Definition: Testable.h:152
Definition: Group.h:43
Definition: BayesTreeCliqueBase.h:49
Definition: BayesTree.h:66
Definition: Testable.h:112
SymbolicBayesTree()
Definition: SymbolicBayesTree.h:59
Bayes Tree is a tree of cliques of a Bayes Chain.
Definition: chartTesting.h:28
Definition: SymbolicBayesTree.h:48
Base class for cliques of a BayesTree.