Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph Class Reference

Necessary because ogdf::EdgeWeightedGraphCopy<T> is rubbish. More...

Public Member Functions

 AuxiliaryGraph (const EdgeWeightedGraph< T > &orig, const List< node > &terminals)
 Constructs a copy of the original graph with an added source node having edges to all other nodes. More...
 
node copy (node v) const
 Returns the copied node of the original node v. More...
 
const EdgeWeightedGraph< T > & graph () const
 Returns a const reference to the graph. More...
 
edge original (edge e) const
 Returns the original edge for the copied edge e. More...
 
node original (node v) const
 Returns the original node for the copied node v. More...
 
void setWeight (edge e, T value)
 Sets the weight of a copied edge. More...
 
node source () const
 Returns the source node. More...
 
const NodeArray< bool > & terminalArray () const
 Returns a const reference to m_isTerminal. More...
 
weight (edge e) const
 Returns the weight of a copied edge. More...
 

Private Attributes

EdgeWeightedGraph< T > m_copy
 The auxiliary copy. More...
 
NodeArray< nodem_copyOfNode
 A mapping from original nodes to copied nodes. More...
 
NodeArray< bool > m_isTerminal
 True for terminals in the auxiliary graph. More...
 
const EdgeWeightedGraph< T > & m_original
 A reference to the original graph. More...
 
EdgeArray< edgem_origOfEdge
 A mapping from copied edges to original edges. More...
 
NodeArray< nodem_origOfNode
 A mapping from copied nodes to original nodes. More...
 
node m_source
 The source node. More...
 

Detailed Description

template<typename T>
class ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph

Necessary because ogdf::EdgeWeightedGraphCopy<T> is rubbish.

Definition at line 71 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

Constructor & Destructor Documentation

◆ AuxiliaryGraph()

template<typename T >
ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::AuxiliaryGraph ( const EdgeWeightedGraph< T > &  orig,
const List< node > &  terminals 
)
inline

Constructs a copy of the original graph with an added source node having edges to all other nodes.

Definition at line 83 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

Member Function Documentation

◆ copy()

template<typename T >
node ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::copy ( node  v) const
inline

Returns the copied node of the original node v.

Definition at line 114 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ graph()

template<typename T >
const EdgeWeightedGraph<T>& ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::graph ( ) const
inline

Returns a const reference to the graph.

Definition at line 135 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ original() [1/2]

template<typename T >
edge ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::original ( edge  e) const
inline

Returns the original edge for the copied edge e.

Definition at line 126 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ original() [2/2]

template<typename T >
node ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::original ( node  v) const
inline

Returns the original node for the copied node v.

Definition at line 120 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ setWeight()

template<typename T >
void ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::setWeight ( edge  e,
value 
)
inline

Sets the weight of a copied edge.

Definition at line 147 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ source()

template<typename T >
node ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::source ( ) const
inline

Returns the source node.

Definition at line 132 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ terminalArray()

template<typename T >
const NodeArray<bool>& ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::terminalArray ( ) const
inline

Returns a const reference to m_isTerminal.

Definition at line 138 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ weight()

template<typename T >
T ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::weight ( edge  e) const
inline

Returns the weight of a copied edge.

Definition at line 141 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

Member Data Documentation

◆ m_copy

template<typename T >
EdgeWeightedGraph<T> ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_copy
private

The auxiliary copy.

Definition at line 73 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ m_copyOfNode

template<typename T >
NodeArray<node> ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_copyOfNode
private

A mapping from original nodes to copied nodes.

Definition at line 74 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ m_isTerminal

template<typename T >
NodeArray<bool> ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_isTerminal
private

True for terminals in the auxiliary graph.

Definition at line 77 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ m_original

template<typename T >
const EdgeWeightedGraph<T>& ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_original
private

A reference to the original graph.

Definition at line 72 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ m_origOfEdge

template<typename T >
EdgeArray<edge> ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_origOfEdge
private

A mapping from copied edges to original edges.

Definition at line 76 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ m_origOfNode

template<typename T >
NodeArray<node> ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_origOfNode
private

A mapping from copied nodes to original nodes.

Definition at line 75 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.

◆ m_source

template<typename T >
node ogdf::steiner_tree::FullComponentGeneratorDreyfusWagnerWithoutMatrix< T >::AuxiliaryGraph::m_source
private

The source node.

Definition at line 79 of file FullComponentGeneratorDreyfusWagnerWithoutMatrix.h.


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