Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

EmbedderMinDepthMaxFace.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/Graph.h>
35 #include <ogdf/basic/List.h>
36 #include <ogdf/basic/basic.h>
39 
40 namespace ogdf {
41 
43 
50 public:
56  virtual void doCall(Graph& G, adjEntry& adjExternal) override;
57 
58 protected:
60 
71  int bottomUpTraversal(const node& bT, const node& cH);
72 
84  void topDownTraversal(const node& bT);
85 
86  int constraintMaxFace(const node& bT, const node& cH) override;
87 
88  void maximumFaceRec(const node& bT, node& bT_opt, int& ell_opt) override;
89 
90  virtual void embedBlock(const node& bT, const node& cT, ListIterator<adjEntry>& after) override;
91 
93 
96 
99 
102 
106 
111 
114 
117 
120 
123 
126 };
127 
128 }
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
ogdf::embedder::MDMFLengthAttribute
Auxiliary length attribute.
Definition: MDMFLengthAttribute.h:45
Graph.h
Includes declaration of graph class.
ogdf::EmbedderMaxFace::embedBlock
void embedBlock(const node &bT)
Computes the adjacency list for all nodes in a block and calls recursively the function for all block...
ogdf::EmbedderMinDepthMaxFace::mf_nodeLength
NodeArray< int > mf_nodeLength
is saving for each node of the block graph its length
Definition: EmbedderMinDepthMaxFace.h:113
ogdf::EmbedderMaxFace
Embedder that maximizes the external face.
Definition: EmbedderMaxFace.h:56
ogdf::EmbedderMinDepthMaxFace::M2
NodeArray< List< node > > M2
M2 is empty, if |M_B| != 1, otherwise M_B = {cH} M2 = {cH' in V_B \ {v} | m_B(cH') = m2} with m2 = ma...
Definition: EmbedderMinDepthMaxFace.h:110
ogdf::EmbedderMinDepthMaxFace::mf_cstrLength
NodeArray< int > mf_cstrLength
is saving for each node of the block graph its cstrLength
Definition: EmbedderMinDepthMaxFace.h:116
ogdf::EmbedderMinDepthMaxFace::md_M_B
NodeArray< List< node > > md_M_B
M_B = {cH in B | m_B(cH) = m_B} with m_B = max{m_B(c) : c in B} and m_B(c) = max( {0} cup {m_{c,...
Definition: EmbedderMinDepthMaxFace.h:105
MDMFLengthAttribute.h
Definition of MDMFLengthAttribute.
ogdf::AdjElement
Class for adjacency list elements.
Definition: Graph_d.h:142
ogdf::EmbedderMinDepthMaxFace::cB
EdgeArray< int > cB
an array saving the length for each edge in the BC-tree
Definition: EmbedderMinDepthMaxFace.h:101
ogdf::internal::GraphRegisteredArray
RegisteredArray for nodes, edges and adjEntries of a graph.
Definition: Graph_d.h:658
ogdf::Graph
Data type for general directed graphs (adjacency list representation).
Definition: Graph_d.h:869
ogdf::EmbedderMinDepthMaxFace::minDepth
NodeArray< int > minDepth
an array containing the minimum depth of each block
Definition: EmbedderMinDepthMaxFace.h:98
ogdf::EmbedderMinDepthMaxFace::edgeLength
EdgeArray< MDMFLengthAttribute > edgeLength
is saving for each edge of the block graph its length
Definition: EmbedderMinDepthMaxFace.h:125
EmbedderMaxFace.h
Declares ogdf::EmbedderMaxFace.
basic.h
Basic declarations, included by all source files.
OGDF_EXPORT
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition: config.h:101
ogdf::EmbedderMinDepthMaxFace::md_nodeLength
NodeArray< int > md_nodeLength
saving for each node in the block graph its length
Definition: EmbedderMinDepthMaxFace.h:95
List.h
Declaration of doubly linked lists and iterators.
ogdf::EmbedderMinDepthMaxFace::mdmf_nodeLength
NodeArray< MDMFLengthAttribute > mdmf_nodeLength
is saving for each node of the block graph its length
Definition: EmbedderMinDepthMaxFace.h:122
ogdf::ListIteratorBase
Encapsulates a pointer to a list element.
Definition: List.h:51
ogdf::EmbedderMinDepthMaxFace::maxFaceSize
NodeArray< int > maxFaceSize
an array containing the maximum face size of each block
Definition: EmbedderMinDepthMaxFace.h:119
ogdf::NodeElement
Class for the representation of nodes.
Definition: Graph_d.h:240
ogdf::internal::EdgeArrayBase2
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition: Graph_d.h:716
ogdf::EmbedderMinDepthMaxFace
Embedding that minimizes block-nesting depth and maximizes the external face.
Definition: EmbedderMinDepthMaxFace.h:49