|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
58 return isClusterPlanarDestructive(CGcopy, Gcopy);
76 if (!clusterPlanarEmbedClusterPlanarGraph(CGcopy, Gcopy)) {
81 copyBackEmbedding(CG, G, CGcopy, Gcopy, copyC, copyN, copyE, origE);
96 throw std::runtime_error(
97 "Embedding is (currently) not implemented by this ClusterPlanarityModule!");
108 for (
adjEntry adj : copyC[c]->adjEntries) {
109 c->
adjEntries.pushBack(origE.mapEndpoint(adj));
The namespace for all OGDF objects.
Includes declaration of graph class.
#define OGDF_ASSERT(expr)
Assert condition expr. See doc/build.md for more information.
const Graph & constGraph() const
Returns a reference to the underlying graph.
RegisteredArray for labeling the clusters of a ClusterGraph.
Class for adjacency list elements.
Representation of clusters in a clustered graph.
internal::GraphObjectContainer< ClusterElement > clusters
The container containing all cluster objects.
void invertRegisteredArray(const RA1 &from, RA2 &to)
Copy data from a ABCArray<XYZ> to an XYZArray<ABC>
bool adjAvailable() const
Gets the availability status of the adjacency entries.
virtual bool isClusterPlanar(const ClusterGraph &CG)
Returns true, if CG is cluster-planar, false otherwise.
Decralation of GraphElement and GraphList classes.
virtual bool clusterPlanarEmbed(ClusterGraph &CG, Graph &G)
Returns true, if CG is cluster-planar, false otherwise. If true, CG contains a cluster-planar embeddi...
Declaration of graph copy classes.
RegisteredArray for nodes, edges and adjEntries of a graph.
Data type for general directed graphs (adjacency list representation).
virtual bool clusterPlanarEmbedClusterPlanarGraph(ClusterGraph &CG, Graph &G)
Constructs a cluster-planar embedding of CG. CG has to be cluster-planar!
ListContainer< adjEntry, ClusterElement > adjEntries
The container containing the sorted list of adjacency entries of edges leaving this cluster.
Basic declarations, included by all source files.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Derived class of GraphObserver providing additional functionality to handle clustered graphs.
Declaration of doubly linked lists and iterators.
virtual void copyBackEmbedding(ClusterGraph &CG, Graph &G, const ClusterGraph &CGcopy, const Graph &Gcopy, const ClusterArray< cluster > ©C, const NodeArray< node > ©N, const EdgeArray< edge > ©E, const EdgeArray< edge > &origE) const
Declares base class for all module types.
void copyEmbedding(const Graph &from, Graph &to, std::function< adjEntry(adjEntry)> adjMapFromTo)
Representation of clustered graphs.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.