Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

deterministic.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/Array.h>
35 #include <ogdf/basic/Graph.h>
36 #include <ogdf/basic/List.h>
38 
39 #include <utility>
40 
41 namespace ogdf {
42 
48 
55 OGDF_EXPORT void customGraph(Graph& G, int n, List<std::pair<int, int>> edges, Array<node>& nodes);
56 
58 
64 inline void customGraph(Graph& G, int n, List<std::pair<int, int>> edges) {
65  Array<node> nodes;
66  customGraph(G, n, edges, nodes);
67 }
68 
70 
85 OGDF_EXPORT void circulantGraph(Graph& G, int n, Array<int> jumps);
86 
88 
98 OGDF_EXPORT void regularLatticeGraph(Graph& G, int n, int k);
99 
101 
108 OGDF_EXPORT void regularTree(Graph& G, int n, int children);
109 
111 
117 OGDF_EXPORT void completeGraph(Graph& G, int n);
118 
120 
126 OGDF_EXPORT void completeKPartiteGraph(Graph& G, const Array<int>& signature);
127 
129 
136 OGDF_EXPORT void completeBipartiteGraph(Graph& G, int n, int m);
137 
139 
144 OGDF_EXPORT void wheelGraph(Graph& G, int n);
145 
147 
151 OGDF_EXPORT void cubeGraph(Graph& G, int n);
152 
154 
162 OGDF_EXPORT void globeGraph(Graph& G, int meridians, int latitudes);
163 
165 
173 OGDF_EXPORT void suspension(Graph& G, int s);
174 
176 
183 OGDF_EXPORT void gridGraph(Graph& G, int n, int m, bool loopN, bool loopM);
184 
186 
199 OGDF_EXPORT void petersenGraph(Graph& G, int n = 5, int m = 2);
200 
202 
206 OGDF_EXPORT void emptyGraph(Graph& G, int nodes);
207 
209 
212 }
ogdf
The namespace for all OGDF objects.
Definition: AugmentationModule.h:36
Graph.h
Includes declaration of graph class.
ogdf::wheelGraph
void wheelGraph(Graph &G, int n)
Creates the graph W_n: A wheel graph.
ogdf::customGraph
void customGraph(Graph &G, int n, List< std::pair< int, int >> edges, Array< node > &nodes)
Creates a custom graph using a list of pairs to determine the graph's edges.
ogdf::completeBipartiteGraph
void completeBipartiteGraph(Graph &G, int n, int m)
Creates the complete bipartite graph K_{n,m}.
ogdf::regularTree
void regularTree(Graph &G, int n, int children)
Creates a regular tree.
ogdf::regularLatticeGraph
void regularLatticeGraph(Graph &G, int n, int k)
Creates a regular lattice graph.
ogdf::circulantGraph
void circulantGraph(Graph &G, int n, Array< int > jumps)
Creates a circulant graph.
ogdf::suspension
void suspension(Graph &G, int s)
Modifies G by adding its s-th suspension.
ogdf::emptyGraph
void emptyGraph(Graph &G, int nodes)
Creates a graph with nodes nodes and no edges.
ogdf::cubeGraph
void cubeGraph(Graph &G, int n)
Creates the graph Q^n: A n-cube graph.
ogdf::Array< node >
ogdf::completeGraph
void completeGraph(Graph &G, int n)
Creates the complete graph K_n.
ogdf::List
Doubly linked lists (maintaining the length of the list).
Definition: List.h:42
ogdf::Graph
Data type for general directed graphs (adjacency list representation).
Definition: Graph_d.h:862
ogdf::completeKPartiteGraph
void completeKPartiteGraph(Graph &G, const Array< int > &signature)
Creates the complete k-partite graph K_{k1,k2,...,kn}.
OGDF_EXPORT
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition: config.h:101
Array.h
Declaration and implementation of Array class and Array algorithms.
ogdf::petersenGraph
void petersenGraph(Graph &G, int n=5, int m=2)
Creates a generalized Petersen graph.
config.h
Basic configuration file.
List.h
Declaration of doubly linked lists and iterators.
ogdf::globeGraph
void globeGraph(Graph &G, int meridians, int latitudes)
Creates a globe graph with a given number of meridians and latitudes.
ogdf::gridGraph
void gridGraph(Graph &G, int n, int m, bool loopN, bool loopM)
Creates a (toroidal) grid graph on n x m nodes.