Go to the documentation of this file.
32 template<
class CLIQUE>
class BayesTree;
48 template<
class DERIVED,
class FACTORGRAPH>
133 const std::string&
s =
"",
211 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION
213 friend class boost::serialization::access;
214 template<
class ARCHIVE>
215 void serialize(ARCHIVE & ar,
const unsigned int ) {
219 ar & BOOST_SERIALIZATION_NVP(
is_root);
222 ar & BOOST_SERIALIZATION_NVP(
parent_);
224 ar & BOOST_SERIALIZATION_NVP(
children);
BayesTreeCliqueBase< DERIVED, FACTORGRAPH > This
virtual ~BayesTreeCliqueBase()
A thin wrapper around std::vector that uses a custom allocator.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
Typedefs for easier changing of types.
const sharedConditional & conditional() const
BayesTreeCliqueBase(const sharedConditional &conditional)
void setEliminationResult(const typename FactorGraphType::EliminationResult &eliminationResult)
std::vector< T, typename internal::FastDefaultVectorAllocator< T >::type > FastVector
bool isRoot() const
Return true if this clique is the root of a Bayes tree.
void deleteCachedShortcutsNonRecursive()
sharedConditional & conditional()
std::weak_ptr< DerivedType > derived_weak_ptr
FactorGraphType separatorMarginal(Eliminate function=EliminationTraitsType::DefaultEliminate) const
BayesNetType shortcut(const derived_ptr &root, Eliminate function=EliminationTraitsType::DefaultEliminate) const
std::weak_ptr< This > weak_ptr
BayesNetType::ConditionalType ConditionalType
Variable ordering for the elimination algorithm.
KeyVector separator_setminus_B(const derived_ptr &B) const
Calculate set for shortcut calculations.
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
KeyFormatter DefaultKeyFormatter
Assign default key formatter.
std::shared_ptr< DerivedType > derived_ptr
BayesTreeCliqueBase & operator=(const BayesTreeCliqueBase &c)
Shallow copy assignment constructor.
std::pair< std::shared_ptr< ConditionalType >, std::shared_ptr< _FactorType > > EliminationResult
FactorGraphType::Eliminate Eliminate
std::shared_ptr< This > shared_ptr
const derived_ptr operator[](size_t i) const
Return the child at index i.
std::shared_ptr< ConditionalType > sharedConditional
FactorGraphType marginal2(Eliminate function=EliminationTraitsType::DefaultEliminate) const
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
BayesTreeCliqueBase()
Default constructor.
const std::optional< FactorGraphType > & cachedSeparatorMarginal() const
FactorGraphType::FactorType FactorType
FastVector< derived_ptr > children
virtual void print(const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
sharedConditional conditional_
size_t numCachedSeparatorMarginals() const
EliminationTraitsType::BayesNetType BayesNetType
bool equals(const DERIVED &other, double tol=1e-9) const
void deleteCachedShortcuts()
std::mutex cachedSeparatorMarginalMutex_
A clique in a SymbolicBayesTree.
derived_ptr parent() const
BayesTreeCliqueBase(const BayesTreeCliqueBase &c)
Shallow copy constructor.
EliminationTraits< FACTORGRAPH > EliminationTraitsType
KeyVector shortcut_indices(const derived_ptr &B, const FactorGraphType &p_Cp_B) const
std::function< EliminationResult(const FactorGraphType &, const Ordering &)> Eliminate
The function type that does a single dense elimination step on a subgraph.
std::optional< FactorGraphType > cachedSeparatorMarginal_
This stores the Cached separator marginal P(S)
FACTORGRAPH FactorGraphType
size_t nrChildren() const
Return the number of children.
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:11:11