Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

EdgeWeightedGraph.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/GraphCopy.h>
35 
36 namespace ogdf {
37 
38 template<typename T>
39 class EdgeWeightedGraph : public Graph {
40 public:
41  EdgeWeightedGraph() : Graph(), m_edgeWeight(*this, 0) { }
42 
43  explicit EdgeWeightedGraph(GraphCopy& gC) { }
44 
45  virtual ~EdgeWeightedGraph() { }
46 
48  edge e = Graph::newEdge(v, w);
49  m_edgeWeight[e] = weight;
50  return e;
51  }
52 
54  node u = Graph::newNode();
55  return u;
56  }
57 
58  T weight(const edge e) const { return m_edgeWeight[e]; }
59 
60  const EdgeArray<T>& edgeWeights() const { return m_edgeWeight; }
61 
62  void setWeight(const edge e, T weight) { m_edgeWeight[e] = weight; }
63 
64 protected:
66 };
67 
68 }
ogdf
The namespace for all OGDF objects.
Definition: AugmentationModule.h:36
ogdf::EdgeWeightedGraph::newEdge
edge newEdge(node v, node w, T weight)
Definition: EdgeWeightedGraph.h:47
ogdf::EdgeWeightedGraph::weight
T weight(const edge e) const
Definition: EdgeWeightedGraph.h:58
ogdf::GraphCopy
Copies of graphs supporting edge splitting.
Definition: GraphCopy.h:384
ogdf::EdgeWeightedGraph::~EdgeWeightedGraph
virtual ~EdgeWeightedGraph()
Definition: EdgeWeightedGraph.h:45
ogdf::EdgeWeightedGraph::EdgeWeightedGraph
EdgeWeightedGraph()
Definition: EdgeWeightedGraph.h:41
ogdf::EdgeWeightedGraph
Definition: EdgeWeightedGraph.h:39
ogdf::EdgeWeightedGraph::edgeWeights
const EdgeArray< T > & edgeWeights() const
Definition: EdgeWeightedGraph.h:60
GraphCopy.h
Declaration of graph copy classes.
ogdf::Graph
Data type for general directed graphs (adjacency list representation).
Definition: Graph_d.h:862
ogdf::EdgeWeightedGraph::m_edgeWeight
EdgeArray< T > m_edgeWeight
Definition: EdgeWeightedGraph.h:65
ogdf::Graph::newNode
node newNode(int index=-1)
Creates a new node and returns it.
Definition: Graph_d.h:1056
ogdf::EdgeElement
Class for the representation of edges.
Definition: Graph_d.h:356
ogdf::EdgeWeightedGraph::newNode
node newNode()
Definition: EdgeWeightedGraph.h:53
ogdf::EdgeWeightedGraph::EdgeWeightedGraph
EdgeWeightedGraph(GraphCopy &gC)
Definition: EdgeWeightedGraph.h:43
ogdf::EdgeWeightedGraph::setWeight
void setWeight(const edge e, T weight)
Definition: EdgeWeightedGraph.h:62
ogdf::Graph::newEdge
edge newEdge(node v, node w, int index=-1)
Creates a new edge (v,w) and returns it.
Definition: Graph_d.h:1075
ogdf::NodeElement
Class for the representation of nodes.
Definition: Graph_d.h:233
ogdf::internal::EdgeArrayBase2
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition: Graph_d.h:709