g2o
Loading...
Searching...
No Matches
g2o::Star Struct Reference

#include <star.h>

Collaboration diagram for g2o::Star:

Public Member Functions

 Star (int level, SparseOptimizer *optimizer)
bool labelStarEdges (int iterations, EdgeLabeler *labeler)
int level () const
 returns the level of the lower edges in the star
SparseOptimizer * optimizer ()
 returns the optimizer
HyperGraph::EdgeSet & lowLevelEdges ()
 low level edge set
HyperGraph::EdgeSet & starEdges ()
 high level edge set
HyperGraph::EdgeSet & starFrontierEdges ()
 edges in the high level that lead to some node owned by a different star
HyperGraph::VertexSet & gauge ()
 set of nodes to keep fixed in the optimization
HyperGraph::VertexSet & lowLevelVertices ()
 set of all vertices in the low level

Public Attributes

int _level
 level of the star
SparseOptimizer * _optimizer
 optimizer
HyperGraph::EdgeSet _lowLevelEdges
 edges in the lower level
HyperGraph::EdgeSet _starEdges
 edges in the star
HyperGraph::EdgeSet _starFrontierEdges
 edges in the star that lead to some other star
HyperGraph::VertexSet _gauge
 vertices that are fixed (center of the star)
HyperGraph::VertexSet _lowLevelVertices
 vertices that are fixed (center of the star)

Detailed Description

Class that represents a subgraph in the hierarchical optimization. The subgraph is consisting of

  • a set of "central" nodes forming the gauge
  • a set of edges and vertices in the lower (denser) level
  • a set of edges in the higher level, each one going from the gauge to one of the vertices in the lower level These edges form the "star" view at the higher level

Additionally, a star provides a function to compute the parameters for each of the edges in the higher level, based on the actual configuration of the state variables. It does so by using an EdgeLabeler class.

Definition at line 54 of file star.h.

Constructor & Destructor Documentation

◆ Star()

g2o::Star::Star ( int level,
SparseOptimizer * optimizer )

constructs a star at level l in the graph of the sparse optimizer passed as argument

Parameters
levelthe (higher) level of the star
optimizerthe optimizer

Definition at line 34 of file star.cpp.

References _level, _optimizer, level(), and optimizer().

Member Function Documentation

◆ gauge()

HyperGraph::VertexSet & g2o::Star::gauge ( )
inline

set of nodes to keep fixed in the optimization

Definition at line 78 of file star.h.

References _gauge.

Referenced by g2o::computeBorder(), g2o::computeSimpleStars(), and main().

◆ labelStarEdges()

◆ level()

int g2o::Star::level ( ) const
inline

returns the level of the lower edges in the star

Definition at line 68 of file star.h.

References _level.

Referenced by Star().

◆ lowLevelEdges()

HyperGraph::EdgeSet & g2o::Star::lowLevelEdges ( )
inline

low level edge set

Definition at line 72 of file star.h.

References _lowLevelEdges.

Referenced by g2o::assignHierarchicalEdges(), g2o::computeSimpleStars(), and g2o::constructEdgeStarMap().

◆ lowLevelVertices()

HyperGraph::VertexSet & g2o::Star::lowLevelVertices ( )
inline

set of all vertices in the low level

Definition at line 80 of file star.h.

References _lowLevelVertices.

Referenced by g2o::assignHierarchicalEdges().

◆ optimizer()

SparseOptimizer * g2o::Star::optimizer ( )
inline

returns the optimizer

Definition at line 70 of file star.h.

References _optimizer.

Referenced by g2o::computeSimpleStars(), labelStarEdges(), and Star().

◆ starEdges()

HyperGraph::EdgeSet & g2o::Star::starEdges ( )
inline

high level edge set

Definition at line 74 of file star.h.

References _starEdges.

Referenced by g2o::constructEdgeStarMap().

◆ starFrontierEdges()

HyperGraph::EdgeSet & g2o::Star::starFrontierEdges ( )
inline

edges in the high level that lead to some node owned by a different star

Definition at line 76 of file star.h.

References _starFrontierEdges.

Referenced by g2o::computeBorder(), and main().

Member Data Documentation

◆ _gauge

HyperGraph::VertexSet g2o::Star::_gauge

vertices that are fixed (center of the star)

Definition at line 93 of file star.h.

Referenced by g2o::assignHierarchicalEdges(), g2o::computeSimpleStars(), gauge(), labelStarEdges(), and g2o::BackBoneTreeAction::perform().

◆ _level

int g2o::Star::_level

level of the star

Definition at line 83 of file star.h.

Referenced by level(), and Star().

◆ _lowLevelEdges

HyperGraph::EdgeSet g2o::Star::_lowLevelEdges

edges in the lower level

Definition at line 87 of file star.h.

Referenced by g2o::computeSimpleStars(), g2o::BackBoneTreeAction::fillStar(), labelStarEdges(), and lowLevelEdges().

◆ _lowLevelVertices

HyperGraph::VertexSet g2o::Star::_lowLevelVertices

vertices that are fixed (center of the star)

Definition at line 95 of file star.h.

Referenced by g2o::BackBoneTreeAction::addToMap(), g2o::assignHierarchicalEdges(), g2o::computeSimpleStars(), g2o::BackBoneTreeAction::fillStar(), and lowLevelVertices().

◆ _optimizer

SparseOptimizer* g2o::Star::_optimizer

optimizer

Definition at line 85 of file star.h.

Referenced by labelStarEdges(), optimizer(), and Star().

◆ _starEdges

HyperGraph::EdgeSet g2o::Star::_starEdges

edges in the star

Definition at line 89 of file star.h.

Referenced by g2o::assignHierarchicalEdges(), g2o::computeBorder(), g2o::computeSimpleStars(), labelStarEdges(), main(), and starEdges().

◆ _starFrontierEdges

HyperGraph::EdgeSet g2o::Star::_starFrontierEdges

edges in the star that lead to some other star

Definition at line 91 of file star.h.

Referenced by starFrontierEdges().


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