GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Public Types | Protected Attributes | List of all members
gtsam::EliminatableClusterTree< BAYESTREE, GRAPH > Class Template Reference

#include <ClusterTree.h>

Inheritance diagram for gtsam::EliminatableClusterTree< BAYESTREE, GRAPH >:
Inheritance graph
[legend]
Collaboration diagram for gtsam::EliminatableClusterTree< BAYESTREE, GRAPH >:
Collaboration graph
[legend]

Public Types

typedef BAYESTREE BayesTreeType
 The BayesTree type produced by elimination.
 
typedef GRAPH FactorGraphType
 The factor graph type.
 
typedef EliminatableClusterTree< BAYESTREE, GRAPH > This
 This class.
 
typedef std::shared_ptr< Thisshared_ptr
 Shared pointer to this class.
 
typedef BAYESTREE::ConditionalType ConditionalType
 The type of conditionals.
 
typedef std::shared_ptr< ConditionalTypesharedConditional
 Shared pointer to a conditional.
 
typedef GRAPH::Eliminate Eliminate
 Typedef for an eliminate subroutine.
 
typedef GRAPH::FactorType FactorType
 The type of factors.
 
typedef std::shared_ptr< FactorTypesharedFactor
 Shared pointer to a factor.
 
typedef std::shared_ptr< ClustersharedCluster
 Shared pointer to Cluster.
 
typedef Cluster Node
 
typedef sharedCluster sharedNode
 

Public Member Functions

Standard Interface
std::pair< std::shared_ptr< BayesTreeType >, std::shared_ptr< FactorGraphType > > eliminate (const Eliminate &function) const
 
Advanced Interface
const FastVector< sharedFactor > & remainingFactors () const
 
Testable
void print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 
Advanced Interface
void addRoot (const std::shared_ptr< Cluster > &cluster)
 
void addChildrenAsRoots (const std::shared_ptr< Cluster > &cluster)
 
size_t nrRoots () const
 
const FastVector< sharedNode > & roots () const
 
const Clusteroperator[] (size_t i) const
 

Protected Member Functions

Standard Constructors
 EliminatableClusterTree (const This &other)
 
Details
Thisoperator= (const This &other)
 
 EliminatableClusterTree ()
 Default constructor to be used in derived classes.
 

Protected Attributes

FastVector< sharedFactorremainingFactors_
 
FastVector< sharedNode > roots_
 

Detailed Description

template<class BAYESTREE, class GRAPH>
class gtsam::EliminatableClusterTree< BAYESTREE, GRAPH >

A cluster-tree that eliminates to a Bayes tree.

Constructor & Destructor Documentation

◆ EliminatableClusterTree()

template<class BAYESTREE, class GRAPH>
gtsam::EliminatableClusterTree< BAYESTREE, GRAPH >::EliminatableClusterTree ( 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.

Member Function Documentation

◆ eliminate()

template<class BAYESTREE , class GRAPH >
std::pair< std::shared_ptr< BAYESTREE >, std::shared_ptr< GRAPH > > gtsam::EliminatableClusterTree< BAYESTREE, GRAPH >::eliminate ( const Eliminate function) const

Eliminate the factors to a Bayes tree and remaining factor graph

Parameters
functionThe function to use to eliminate, see the namespace functions in GaussianFactorGraph.h
Returns
The Bayes tree and factor graph resulting from elimination

◆ operator=()

template<class BAYESTREE , class GRAPH >
EliminatableClusterTree< BAYESTREE, GRAPH > & gtsam::EliminatableClusterTree< BAYESTREE, 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.

◆ print()

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

Print the cluster tree

◆ remainingFactors()

template<class BAYESTREE, class GRAPH>
const FastVector<sharedFactor>& gtsam::EliminatableClusterTree< BAYESTREE, GRAPH >::remainingFactors ( ) const
inline

Return the remaining factors that are not pulled into elimination

◆ roots()

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

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

Member Data Documentation

◆ roots_

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

concept check


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