Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

PlanRepLight.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/Graph.h>
35 #include <ogdf/basic/GraphCopy.h>
36 #include <ogdf/planarity/PlanRep.h>
37 
38 namespace ogdf {
39 
40 
42 
45 class PlanRepLight : public GraphCopy {
46  const CCsInfo& m_ccInfo;
47  const PlanRep& m_pr;
48 
51 
52 public:
54  PlanRepLight(const PlanRep& pr);
55 
57  int numberOfCCs() const { return m_ccInfo.numberOfCCs(); }
58 
60  int currentCC() const { return m_currentCC; }
61 
63  const CCsInfo& ccInfo() const { return m_ccInfo; }
64 
66  edge e(int i) const { return m_ccInfo.e(i); }
67 
69  node v(int i) const { return m_ccInfo.v(i); }
70 
72  int startEdge() const { return m_ccInfo.startEdge(m_currentCC); }
73 
75  int stopEdge() const { return m_ccInfo.stopEdge(m_currentCC); }
76 
77  EdgeType typeOf(edge e) const {
78  edge eOrig = m_eOrig[e];
79  return (eOrig != nullptr) ? typeOrig(eOrig) : Graph::EdgeType::association;
80  }
81 
82  EdgeType typeOrig(edge eOrig) const { return m_pr.typeOrig(eOrig); }
83 
85  void initCC(int cc);
86 };
87 
88 }
ogdf::PlanRepLight::stopEdge
int stopEdge() const
Returns the index of (one past) the last edge in this connected component.
Definition: PlanRepLight.h:75
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
ogdf::PlanRepLight::m_pr
const PlanRep & m_pr
Definition: PlanRepLight.h:47
ogdf::PlanRepLight::initCC
void initCC(int cc)
Initializes the planarized representation for connected component cc.
Graph.h
Includes declaration of graph class.
ogdf::PlanRepLight::ccInfo
const CCsInfo & ccInfo() const
Returns the connected component info structure.
Definition: PlanRepLight.h:63
ogdf::PlanRep
Planarized representations (of a connected component) of a graph.
Definition: PlanRep.h:69
ogdf::PlanRepLight::startEdge
int startEdge() const
Returns the index of the first edge in this connected component.
Definition: PlanRepLight.h:72
ogdf::Graph::CCsInfo::e
edge e(int i) const
Returns the edge with index i.
Definition: Graph_d.h:1960
ogdf::Graph::CCsInfo::stopEdge
int stopEdge(int cc) const
Returns the index of (one past) the last edge in connected component cc.
Definition: Graph_d.h:1954
ogdf::Graph::EdgeType
EdgeType
The type of edges (only used in derived classes).
Definition: Graph_d.h:909
ogdf::PlanRepLight::PlanRepLight
PlanRepLight(const PlanRep &pr)
Creates a light-weight planarized representation.
ogdf::PlanRepLight::m_currentCC
int m_currentCC
Definition: PlanRepLight.h:49
ogdf::GraphCopy
Copies of graphs supporting edge splitting.
Definition: GraphCopy.h:391
ogdf::PlanRepLight
Light-weight version of a planarized representation, associated with a PlanRep.
Definition: PlanRepLight.h:45
ogdf::PlanRepLight::e
edge e(int i) const
Returns the original edge with index i.
Definition: PlanRepLight.h:66
ogdf::PlanRepLight::m_ccInfo
const CCsInfo & m_ccInfo
Definition: PlanRepLight.h:46
ogdf::PlanRepLight::currentCC
int currentCC() const
Returns the index of the current connected component.
Definition: PlanRepLight.h:60
PlanRep.h
Declaration of a base class for planar representations of graphs and cluster graphs.
ogdf::Graph::CCsInfo::v
node v(int i) const
Returns the node with index i.
Definition: Graph_d.h:1957
ogdf::Graph::EdgeType::association
@ association
ogdf::PlanRepLight::typeOf
EdgeType typeOf(edge e) const
Definition: PlanRepLight.h:77
GraphCopy.h
Declaration of graph copy classes.
ogdf::PlanRepLight::typeOrig
EdgeType typeOrig(edge eOrig) const
Definition: PlanRepLight.h:82
ogdf::PlanRepLight::numberOfCCs
int numberOfCCs() const
Returns the number of connected components in the original graph.
Definition: PlanRepLight.h:57
ogdf::PlanRepLight::v
node v(int i) const
Returns the original node with index i.
Definition: PlanRepLight.h:69
ogdf::EdgeElement
Class for the representation of edges.
Definition: Graph_d.h:363
ogdf::Graph::CCsInfo::numberOfCCs
int numberOfCCs() const
Returns the number of connected components.
Definition: Graph_d.h:1928
ogdf::NodeElement
Class for the representation of nodes.
Definition: Graph_d.h:240
ogdf::PlanRepLight::m_eAuxCopy
EdgeArray< edge > m_eAuxCopy
Definition: PlanRepLight.h:50
ogdf::PlanRep::typeOrig
EdgeType typeOrig(edge e) const
Returns the type of original edge e.
Definition: PlanRep.h:528
ogdf::Graph::CCsInfo::startEdge
int startEdge(int cc) const
Returns the index of the first edge in connected component cc.
Definition: Graph_d.h:1951
ogdf::internal::EdgeArrayBase2
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition: Graph_d.h:716
ogdf::GraphCopyBase::m_eOrig
EdgeArray< edge > m_eOrig
The corresponding edge in the original graph.
Definition: GraphCopy.h:55