Public Types | Public Member Functions | Public Attributes | List of all members
gtsam::ClusterTree< GRAPH >::Cluster Struct Reference

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

#include <ClusterTree.h>

Public Types

typedef FastVector< std::shared_ptr< Cluster > > Children
 
typedef Ordering Keys
 

Public Member Functions

void addChild (const std::shared_ptr< Cluster > &cluster)
 Add a child cluster. More...
 
template<class CONTAINER >
void addFactors (Key key, const CONTAINER &factorsToAdd)
 Add factors associated with a single key. More...
 
 Cluster ()
 
template<class CONTAINER >
 Cluster (Key key, const CONTAINER &factorsToAdd)
 Construct from factors associated with a single key. More...
 
void merge (const std::shared_ptr< Cluster > &cluster)
 Merge in given cluster. More...
 
void mergeChildren (const std::vector< bool > &merge)
 Merge all children for which bit is set into this node. More...
 
size_t nrChildren () const
 
size_t nrFactors () const
 
size_t nrFrontals () const
 
std::vector< size_tnrFrontalsOfChildren () const
 Return a vector with nrFrontal keys for each child. More...
 
const Clusteroperator[] (size_t i) const
 
virtual void print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 print this node More...
 
int problemSize () const
 
virtual ~Cluster ()
 

Public Attributes

Children children
 sub-trees More...
 
FactorGraphType factors
 Factors associated with this node. More...
 
Keys orderedFrontalKeys
 Frontal keys of this node. More...
 
int problemSize_
 

Detailed Description

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

A Cluster is just a collection of factors.

Definition at line 36 of file ClusterTree.h.

Member Typedef Documentation

◆ Children

template<class GRAPH >
typedef FastVector<std::shared_ptr<Cluster> > gtsam::ClusterTree< GRAPH >::Cluster::Children

Definition at line 37 of file ClusterTree.h.

◆ Keys

template<class GRAPH >
typedef Ordering gtsam::ClusterTree< GRAPH >::Cluster::Keys

Definition at line 40 of file ClusterTree.h.

Constructor & Destructor Documentation

◆ Cluster() [1/2]

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

Definition at line 47 of file ClusterTree.h.

◆ ~Cluster()

template<class GRAPH >
virtual gtsam::ClusterTree< GRAPH >::Cluster::~Cluster ( )
inlinevirtual

Definition at line 49 of file ClusterTree.h.

◆ Cluster() [2/2]

template<class GRAPH >
template<class CONTAINER >
gtsam::ClusterTree< GRAPH >::Cluster::Cluster ( Key  key,
const CONTAINER &  factorsToAdd 
)
inline

Construct from factors associated with a single key.

Definition at line 57 of file ClusterTree.h.

Member Function Documentation

◆ addChild()

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

Add a child cluster.

Definition at line 71 of file ClusterTree.h.

◆ addFactors()

template<class GRAPH >
template<class CONTAINER >
void gtsam::ClusterTree< GRAPH >::Cluster::addFactors ( Key  key,
const CONTAINER &  factorsToAdd 
)
inline

Add factors associated with a single key.

Definition at line 64 of file ClusterTree.h.

◆ merge()

template<class GRAPH >
void gtsam::ClusterTree< GRAPH >::Cluster::merge ( const std::shared_ptr< Cluster > &  cluster)

Merge in given cluster.

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

◆ mergeChildren()

template<class GRAPH >
void gtsam::ClusterTree< GRAPH >::Cluster::mergeChildren ( const std::vector< bool > &  merge)

Merge all children for which bit is set into this node.

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

◆ nrChildren()

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

Definition at line 76 of file ClusterTree.h.

◆ nrFactors()

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

Definition at line 80 of file ClusterTree.h.

◆ nrFrontals()

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

Definition at line 84 of file ClusterTree.h.

◆ nrFrontalsOfChildren()

template<class GRAPH >
std::vector< size_t > gtsam::ClusterTree< GRAPH >::Cluster::nrFrontalsOfChildren

Return a vector with nrFrontal keys for each child.

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

◆ operator[]()

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

Definition at line 51 of file ClusterTree.h.

◆ print()

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

print this node

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

◆ problemSize()

template<class GRAPH >
int gtsam::ClusterTree< GRAPH >::Cluster::problemSize ( ) const
inline

Definition at line 88 of file ClusterTree.h.

Member Data Documentation

◆ children

template<class GRAPH >
Children gtsam::ClusterTree< GRAPH >::Cluster::children

sub-trees

Definition at line 38 of file ClusterTree.h.

◆ factors

template<class GRAPH >
FactorGraphType gtsam::ClusterTree< GRAPH >::Cluster::factors

Factors associated with this node.

Definition at line 43 of file ClusterTree.h.

◆ orderedFrontalKeys

template<class GRAPH >
Keys gtsam::ClusterTree< GRAPH >::Cluster::orderedFrontalKeys

Frontal keys of this node.

Definition at line 41 of file ClusterTree.h.

◆ problemSize_

template<class GRAPH >
int gtsam::ClusterTree< GRAPH >::Cluster::problemSize_

Definition at line 45 of file ClusterTree.h.


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


gtsam
Author(s):
autogenerated on Sat Nov 16 2024 04:15:19