TTK
Loading...
Searching...
No Matches
ttk::ftr::DynGraphNode< Type > Struct Template Reference

class representing a node of a tree and the link to its parent if not the root More...

#include <DynamicGraph.h>

Public Member Functions

 DynGraphNode ()
 DynGraphNode (const DynGraphNode &other)
DynGraphNode & operator= (const DynGraphNode &other)
Type getWeight () const
bool hasParent () const
void evert ()
 Make this node the root of its tree.
DynGraphNode * findRoot () const
 Get representative node.
idSuperArc findRootArc () const
idSuperArc getCorArc () const
 Get the arcs corresponding to this subtree.
void setRootArc (const idSuperArc arcId)
std::tuple< DynGraphNode< Type > *, DynGraphNode< Type > * > findMinWeightRoot () const
bool insertEdge (DynGraphNode *const n, const Type weight, const idSuperArc corArc)
void removeEdge ()

Public Attributes

DynGraphNode * parent_
Type weight_
idSuperArc corArc_

Detailed Description

template<typename Type>
struct ttk::ftr::DynGraphNode< Type >

class representing a node of a tree and the link to its parent if not the root

Definition at line 291 of file DynamicGraph.h.

Constructor & Destructor Documentation

◆ DynGraphNode() [1/2]

template<typename Type>
ttk::ftr::DynGraphNode< Type >::DynGraphNode ( )
inlineexplicit

Definition at line 297 of file DynamicGraph.h.

◆ DynGraphNode() [2/2]

template<typename Type>
ttk::ftr::DynGraphNode< Type >::DynGraphNode ( const DynGraphNode< Type > & other)
inline

Definition at line 301 of file DynamicGraph.h.

Member Function Documentation

◆ evert()

template<typename Type>
void ttk::ftr::DynGraphNode< Type >::evert ( )

Make this node the root of its tree.

Definition at line 106 of file DynamicGraph_Template.h.

◆ findMinWeightRoot()

template<typename Type>
std::tuple< DynGraphNode< Type > *, DynGraphNode< Type > * > ttk::ftr::DynGraphNode< Type >::findMinWeightRoot ( ) const

Get representative node and kepp track of the node with the min weight on the path

Returns
tuple<root, node with min weight>

Definition at line 170 of file DynamicGraph_Template.h.

◆ findRoot()

template<typename Type>
DynGraphNode< Type > * ttk::ftr::DynGraphNode< Type >::findRoot ( ) const

Get representative node.

Definition at line 142 of file DynamicGraph_Template.h.

◆ findRootArc()

template<typename Type>
idSuperArc ttk::ftr::DynGraphNode< Type >::findRootArc ( ) const

Get the arcs corresponding to this subtree: find the root before

Definition at line 158 of file DynamicGraph_Template.h.

◆ getCorArc()

template<typename Type>
idSuperArc ttk::ftr::DynGraphNode< Type >::getCorArc ( ) const
inline

Get the arcs corresponding to this subtree.

Definition at line 339 of file DynamicGraph.h.

◆ getWeight()

template<typename Type>
Type ttk::ftr::DynGraphNode< Type >::getWeight ( ) const
inline

Definition at line 316 of file DynamicGraph.h.

◆ hasParent()

template<typename Type>
bool ttk::ftr::DynGraphNode< Type >::hasParent ( ) const
inline

Definition at line 320 of file DynamicGraph.h.

◆ insertEdge()

template<typename Type>
bool ttk::ftr::DynGraphNode< Type >::insertEdge ( DynGraphNode< Type > *const n,
const Type weight,
const idSuperArc corArc )

Create a new edge between this node and the node n

Returns
true if we have merged two tree, false if it was just an intern operation

Definition at line 190 of file DynamicGraph_Template.h.

◆ operator=()

template<typename Type>
DynGraphNode & ttk::ftr::DynGraphNode< Type >::operator= ( const DynGraphNode< Type > & other)
inline

Definition at line 305 of file DynamicGraph.h.

◆ removeEdge()

template<typename Type>
void ttk::ftr::DynGraphNode< Type >::removeEdge ( )

Remove the link between this node and its parent, thus making a new root

Definition at line 226 of file DynamicGraph_Template.h.

◆ setRootArc()

template<typename Type>
void ttk::ftr::DynGraphNode< Type >::setRootArc ( const idSuperArc arcId)

Definition at line 164 of file DynamicGraph_Template.h.

Member Data Documentation

◆ corArc_

template<typename Type>
idSuperArc ttk::ftr::DynGraphNode< Type >::corArc_

Definition at line 295 of file DynamicGraph.h.

◆ parent_

template<typename Type>
DynGraphNode* ttk::ftr::DynGraphNode< Type >::parent_

Definition at line 292 of file DynamicGraph.h.

◆ weight_

template<typename Type>
Type ttk::ftr::DynGraphNode< Type >::weight_

Definition at line 293 of file DynamicGraph.h.


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