Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::steiner_tree::Save< T > Class Template Referenceabstract

This class serves as an interface for different approaches concerning the calculation of save edges. More...

#include <ogdf/graphalg/steiner_tree/Save.h>

+ Inheritance diagram for ogdf::steiner_tree::Save< T >:

Public Member Functions

 Save ()
 
virtual ~Save ()
 
virtual T gain (node u, node v, node w) const =0
 Returns the gain (sum of the save edges) of a node triple. More...
 
virtual edge saveEdge (node u, node v) const =0
 Returns the save edge between two nodes. More...
 
virtual T saveWeight (node u, node v) const =0
 Returns the weight of the save edge between two nodes. More...
 
virtual void update (const Triple< T > &t)=0
 Updates the weighted tree data structure given a contracted triple. More...
 

Detailed Description

template<typename T>
class ogdf::steiner_tree::Save< T >

This class serves as an interface for different approaches concerning the calculation of save edges.

Definition at line 50 of file Save.h.

Constructor & Destructor Documentation

◆ Save()

template<typename T >
ogdf::steiner_tree::Save< T >::Save ( )
inline

Definition at line 52 of file Save.h.

◆ ~Save()

template<typename T >
virtual ogdf::steiner_tree::Save< T >::~Save ( )
inlinevirtual

Definition at line 54 of file Save.h.

Member Function Documentation

◆ gain()

template<typename T >
virtual T ogdf::steiner_tree::Save< T >::gain ( node  u,
node  v,
node  w 
) const
pure virtual

Returns the gain (sum of the save edges) of a node triple.

Parameters
uFirst triple node
vSecond triple node
wThird triple node
Returns
Sum of the save edges between the three nodes

Implemented in ogdf::steiner_tree::SaveEnum< T >, ogdf::steiner_tree::SaveStatic< T >, and ogdf::steiner_tree::SaveDynamic< T >.

◆ saveEdge()

template<typename T >
virtual edge ogdf::steiner_tree::Save< T >::saveEdge ( node  u,
node  v 
) const
pure virtual

Returns the save edge between two nodes.

Parameters
uFirst node
vSecond node
Returns
The save edge

Implemented in ogdf::steiner_tree::SaveDynamic< T >, ogdf::steiner_tree::SaveEnum< T >, and ogdf::steiner_tree::SaveStatic< T >.

◆ saveWeight()

template<typename T >
virtual T ogdf::steiner_tree::Save< T >::saveWeight ( node  u,
node  v 
) const
pure virtual

Returns the weight of the save edge between two nodes.

Parameters
uFirst node
vSecond node
Returns
The weight of the save edge

Implemented in ogdf::steiner_tree::SaveDynamic< T >, ogdf::steiner_tree::SaveEnum< T >, and ogdf::steiner_tree::SaveStatic< T >.

◆ update()

template<typename T >
virtual void ogdf::steiner_tree::Save< T >::update ( const Triple< T > &  t)
pure virtual

Updates the weighted tree data structure given a contracted triple.

Parameters
tThe contracted triple

Implemented in ogdf::steiner_tree::SaveEnum< T >, ogdf::steiner_tree::SaveDynamic< T >, and ogdf::steiner_tree::SaveStatic< T >.


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