Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
UpwardPlanarity.h
Go to the documentation of this file.
1
40#pragma once
41
43#include <ogdf/basic/Graph.h>
44#include <ogdf/basic/basic.h>
45
46namespace ogdf {
47template<class E>
48class List;
49template<class E>
50class SList;
51
53
76public:
81
83
87 static bool isUpwardPlanar(Graph& G);
88
90
95 static bool embedUpwardPlanar(Graph& G, adjEntry& externalToItsRight);
96
97#if 0
99
104 static int maximalFeasibleUpwardPlanarSubgraph(const Graph &G, GraphCopy &GC);
105#endif
106
108
112
114
120 static bool isUpwardPlanar_embedded(const Graph& G);
121
123 static bool isUpwardPlanar_embedded(const Graph& G, List<adjEntry>& possibleExternalFaces);
124
126
130
132
138 static bool isUpwardPlanar_triconnected(const Graph& G);
139
141
148
149
151
155
157
163 static bool isUpwardPlanar_singleSource(const Graph& G);
164
166
173
175
185
187
198 static bool upwardPlanarAugment_singleSource(Graph& G, node& superSink,
199 SList<edge>& augmentedEdges);
200
201
203
209 SList<face>& externalFaces);
210
212
220 SList<edge>& augmentedEdges);
221
223};
224
225}
Declaration of CombinatorialEmbedding and face.
Includes declaration of graph class.
Basic declarations, included by all source files.
Class for adjacency list elements.
Definition Graph_d.h:143
Combinatorial embeddings of planar graphs.
Copies of graphs supporting edge splitting.
Definition GraphCopy.h:390
Data type for general directed graphs (adjacency list representation).
Definition Graph_d.h:866
Doubly linked lists (maintaining the length of the list).
Definition List.h:1451
Class for the representation of nodes.
Definition Graph_d.h:241
Singly linked lists (maintaining the length of the list).
Definition SList.h:845
Upward planarity testing and embedding.
static bool embedUpwardPlanar(Graph &G, adjEntry &externalToItsRight)
Tests whether graph G is upward planar and embeds the graph by a upward planar embedding if possible ...
static bool isUpwardPlanar(Graph &G)
Tests whether graph G is upward planar (using satisfiability).
static bool upwardPlanarAugment_singleSource(Graph &G, node &superSink, SList< edge > &augmentedEdges)
Tests whether single-source digraph G is upward planar, and if yes augments it to a planar st-digraph...
static bool isUpwardPlanar_embedded(const Graph &G, List< adjEntry > &possibleExternalFaces)
Tests whether a biconnected graph G is upward planarly embedded and computes the set of possible exte...
static bool isUpwardPlanar_embedded(const Graph &G)
Tests whether a biconnected graph G is upward planarly embedded.
static bool upwardPlanarEmbed_singleSource(Graph &G)
Upward planarly embeds the single-source digraph G.
static bool isUpwardPlanar_singleSource(const Graph &G)
Tests whether the single-source digraph G is upward planar.
static bool isUpwardPlanar_triconnected(const Graph &G)
Tests whether the triconnected digraph G is upward planar.
static bool upwardPlanarAugment_singleSource(Graph &G)
Tests whether single-source digraph G is upward planar, and if yes augments it to a planar st-digraph...
static bool upwardPlanarAugment_singleSource_embedded(Graph &G, node &superSink, SList< edge > &augmentedEdges)
Tests if single-source digraph G is upward planarly embedded and augments it to a planar st-digraph.
static bool isUpwardPlanar_singleSource_embedded(const ConstCombinatorialEmbedding &E, SList< face > &externalFaces)
Tests whether the embedding E of a single-source digraph is upward planar.
static bool upwardPlanarEmbed_triconnected(Graph &G)
Upward planarly embeds the triconnected digraph G.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
Definition config.h:117
The namespace for all OGDF objects.