Open
Graph Drawing
Framework

 v.2012.07
 

DualGraph.h
Go to the documentation of this file.
1 /*
2  * $Revision: 2523 $
3  *
4  * last checkin:
5  * $Author: gutwenger $
6  * $Date: 2012-07-02 20:59:27 +0200 (Mon, 02 Jul 2012) $
7  ***************************************************************/
8 
43 #ifdef _MSC_VER
44 #pragma once
45 #endif
46 
47 #ifndef OGDF_DUAL_GRAPH_H
48 #define OGDF_DUAL_GRAPH_H
49 
50 
52 #include <ogdf/basic/NodeArray.h>
53 #include <ogdf/basic/EdgeArray.h>
54 #include <ogdf/basic/FaceArray.h>
55 
56 namespace ogdf {
57 
60 {
61 public:
65  ~DualGraph();
67  const CombinatorialEmbedding &getPrimalEmbedding() const { return *m_primalEmbedding; }
69  const Graph &getPrimalGraph() const { return m_primalEmbedding->getGraph(); }
70 
72 
76  const node &primalNode(face f) const { return m_primalNode[f]; }
78 
82  const edge &primalEdge(edge e) const { return m_primalEdge[e]; }
84 
88  const face &primalFace(node v) const { return m_primalFace[v]; }
90 
94  const node &dualNode(face f) const { return m_dualNode[f]; }
96 
100  const edge &dualEdge(edge e) const { return m_dualEdge[e]; }
102 
106  const face &dualFace(node v) const { return m_dualFace[v]; }
107 
108 protected:
116 }; // class DualGraph
117 
118 } // end namespace ogdf
119 
120 #endif