Classes | Public Types | Public Member Functions | Protected Attributes | List of all members
gtsam::ClusterTree< GRAPH > Class Template Reference

#include <ClusterTree.h>

Inheritance diagram for gtsam::ClusterTree< GRAPH >:
Inheritance graph
[legend]

Classes

struct  Cluster
 A Cluster is just a collection of factors. More...
 

Public Types

typedef GRAPH FactorGraphType
 The factor graph type. More...
 
typedef GRAPH::FactorType FactorType
 The type of factors. More...
 
typedef Cluster Node
 
typedef boost::shared_ptr< Thisshared_ptr
 Shared pointer to this class. More...
 
typedef boost::shared_ptr< ClustersharedCluster
 Shared pointer to Cluster. More...
 
typedef boost::shared_ptr< FactorTypesharedFactor
 Shared pointer to a factor. More...
 
typedef sharedCluster sharedNode
 
typedef ClusterTree< GRAPH > This
 This class. More...
 

Public Member Functions

 ClusterTree ()
 Default constructor. More...
 
 GTSAM_CONCEPT_TESTABLE_TYPE (FactorType)
 

Protected Attributes

FastVector< sharedNoderoots_
 

Standard Constructors

 ClusterTree (const This &other)
 

Testable

void print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 

Advanced Interface

void addRoot (const boost::shared_ptr< Cluster > &cluster)
 
void addChildrenAsRoots (const boost::shared_ptr< Cluster > &cluster)
 
size_t nrRoots () const
 
const FastVector< sharedNode > & roots () const
 
const Clusteroperator[] (size_t i) const
 

Details

Thisoperator= (const This &other)
 

Detailed Description

template<class GRAPH>
class gtsam::ClusterTree< GRAPH >

A cluster-tree is associated with a factor graph and is defined as in Koller-Friedman: each node k represents a subset $ C_k \sub X $, and the tree is family preserving, in that each factor $ f_i $ is associated with a single cluster and $ scope(f_i) \sub C_k $.

Definition at line 25 of file ClusterTree.h.

Member Typedef Documentation

template<class GRAPH>
typedef GRAPH gtsam::ClusterTree< GRAPH >::FactorGraphType

The factor graph type.

Definition at line 27 of file ClusterTree.h.

template<class GRAPH>
typedef GRAPH::FactorType gtsam::ClusterTree< GRAPH >::FactorType

The type of factors.

Definition at line 31 of file ClusterTree.h.

template<class GRAPH>
typedef Cluster gtsam::ClusterTree< GRAPH >::Node

Definition at line 109 of file ClusterTree.h.

template<class GRAPH>
typedef boost::shared_ptr<This> gtsam::ClusterTree< GRAPH >::shared_ptr

Shared pointer to this class.

Definition at line 29 of file ClusterTree.h.

template<class GRAPH>
typedef boost::shared_ptr<Cluster> gtsam::ClusterTree< GRAPH >::sharedCluster

Shared pointer to Cluster.

Definition at line 106 of file ClusterTree.h.

template<class GRAPH>
typedef boost::shared_ptr<FactorType> gtsam::ClusterTree< GRAPH >::sharedFactor

Shared pointer to a factor.

Definition at line 32 of file ClusterTree.h.

template<class GRAPH>
typedef sharedCluster gtsam::ClusterTree< GRAPH >::sharedNode

Definition at line 110 of file ClusterTree.h.

template<class GRAPH>
typedef ClusterTree<GRAPH> gtsam::ClusterTree< GRAPH >::This

This class.

Definition at line 28 of file ClusterTree.h.

Constructor & Destructor Documentation

template<class GRAPH>
gtsam::ClusterTree< GRAPH >::ClusterTree ( const This other)
inlineprotected

Copy constructor - makes a deep copy of the tree structure, but only pointers to factors are copied, factors are not cloned.

Definition at line 123 of file ClusterTree.h.

template<class GRAPH>
gtsam::ClusterTree< GRAPH >::ClusterTree ( )
inline

Default constructor.

Definition at line 132 of file ClusterTree.h.

Member Function Documentation

template<class GRAPH>
void gtsam::ClusterTree< GRAPH >::addChildrenAsRoots ( const boost::shared_ptr< Cluster > &  cluster)
inline

Definition at line 150 of file ClusterTree.h.

template<class GRAPH>
void gtsam::ClusterTree< GRAPH >::addRoot ( const boost::shared_ptr< Cluster > &  cluster)
inline

Definition at line 146 of file ClusterTree.h.

template<class GRAPH>
gtsam::ClusterTree< GRAPH >::GTSAM_CONCEPT_TESTABLE_TYPE ( FactorType  )

concept check

template<class GRAPH>
size_t gtsam::ClusterTree< GRAPH >::nrRoots ( ) const
inline

Definition at line 155 of file ClusterTree.h.

template<class GRAPH >
ClusterTree< GRAPH > & gtsam::ClusterTree< GRAPH >::operator= ( const This other)
protected

Assignment operator - makes a deep copy of the tree structure, but only pointers to factors are copied, factors are not cloned.

Definition at line 100 of file ClusterTree-inst.h.

template<class GRAPH>
const Cluster& gtsam::ClusterTree< GRAPH >::operator[] ( size_t  i) const
inline

Definition at line 164 of file ClusterTree.h.

template<class GRAPH >
void gtsam::ClusterTree< GRAPH >::print ( const std::string &  s = "",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
) const

Print the cluster tree

Definition at line 94 of file ClusterTree-inst.h.

template<class GRAPH>
const FastVector<sharedNode>& gtsam::ClusterTree< GRAPH >::roots ( ) const
inline

Return the set of roots (one for a tree, multiple for a forest)

Definition at line 160 of file ClusterTree.h.

Member Data Documentation

template<class GRAPH>
FastVector<sharedNode> gtsam::ClusterTree< GRAPH >::roots_
protected

Definition at line 116 of file ClusterTree.h.


The documentation for this class was generated from the following files:


gtsam
Author(s):
autogenerated on Sat May 8 2021 02:58:05