|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
41 class EdgeWeightedGraph;
85 m_vOrig.init(*
this, 0);
86 m_eOrig.init(*
this, 0);
87 m_vCopy.init(*m_pGraph, 0);
88 m_eCopy.init(*m_pGraph);
89 m_eIterator.init(*
this, 0);
99 for (
node v : nodes) {
106 for (
edge e : m_pGraph->edges) {
109 m_eIterator[eCopy[*it]] = m_eCopy[e].pushBack(eCopy[*it]);
113 m_edgeWeight.init(*
this);
116 m_edgeWeight[eCopy[e]] = wGC.
weight(e);
124 m_edgeWeight.init(*
this);
155 m_edgeWeight.init(*
this);
156 for (
edge e : edges) {
157 m_edgeWeight[e] = wG.
weight(original(e));
165 m_edgeWeight.init(*
this);
171 m_edgeWeight[e] = weight;
178 m_edgeWeight[e] = weight;
The namespace for all OGDF objects.
Includes declaration of graph class.
const Graph * m_pGraph
The original graph.
void setOriginalGraph(const Graph *G) override
Associates the graph copy with G, but does not create any nodes or edges.
T weight(const edge e) const
void setOriginalGraph(const Graph *wG) override
Associates the graph copy with G, but does not create any nodes or edges.
Copies of graphs supporting edge splitting.
bool valid() const
Returns true iff the iterator points to an element.
edge newEdge(node u, node v, T weight)
EdgeArray< T > m_edgeWeight
void init(const EdgeWeightedGraph< T > &wG)
edge newEdge(edge eOrig)
Creates a new edge (v,w) with original edge eOrig.
void init(const Graph &G)
Re-initializes the copy using G, creating copies for all nodes and edges in G.
internal::GraphObjectContainer< NodeElement > nodes
The container containing all node objects.
static void copy(const T &from, T &to)
EdgeWeightedGraphCopy & operator=(const EdgeWeightedGraphCopy &wGC)
virtual ~EdgeWeightedGraphCopy()
Decralation of GraphElement and GraphList classes.
Declaration of graph copy classes.
RegisteredArray for nodes, edges and adjEntries of a graph.
EdgeArray< List< edge > > m_eCopy
The corresponding list of edges in the graph copy.
Data type for general directed graphs (adjacency list representation).
edge copy(edge e) const override
Returns the first edge in the list of edges corresponding to edge e.
internal::GraphObjectContainer< EdgeElement > edges
The container containing all edge objects.
const EdgeArray< T > & edgeWeights() const
T weight(const edge e) const
Class for the representation of edges.
Declaration of doubly linked lists and iterators.
Encapsulates a pointer to a list element.
void setWeight(const edge e, T v)
void initWGC(const EdgeWeightedGraphCopy &wGC, NodeArray< node > &vCopy, EdgeArray< edge > &eCopy)
Class for the representation of nodes.
const Graph & original() const
Returns a reference to the original graph.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
GraphCopy & operator=(const GraphCopy &other)