|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
56 m_cnClusters = cnClusters;
94 bool isZero()
const {
return m_cnClusters == 0 && m_cnEdges == 0; }
97 m_cnClusters = m_cnEdges = std::numeric_limits<int>::max();
169 m_type = Type::Compound;
180 m_origCluster =
nullptr;
204 int pos()
const {
return m_pos; }
219 void store() { m_storedChild = m_child; }
225 void removeAuxChildren();
266 void simplifyAdjacencies();
267 void removeAuxNodes();
293 void createClusterTree(
cluster cOrig);
305 enum class NodeType { Node, ClusterTop, ClusterBottom, Dummy, ClusterTopBottom };
356 RCCrossings reduceCrossings(
int i,
bool dirTopDown);
357 void storeCurrentPos();
361 void removeTopBottomEdges();
371 void assignAeLevel(
cluster c,
int& count);
377 void assignPos(
const LHTreeNode* vNode,
int& count);
380 void computeRanking();
381 void createDummyNodes();
382 void createVirtualClusters();
385 void removeAuxNodes();
The namespace for all OGDF objects.
void setRoot(LHTreeNode *r)
RCCrossings & operator+=(const RCCrossings &cr)
Includes declaration of graph class.
const ClusterGraph * m_pCG
node bottom(cluster cOrig) const
RCCrossings operator-(const RCCrossings &cr) const
SListPure< cluster > m_markedClustersTree
Array< LHTreeNode * > m_child
ClusterArray< cluster > m_original
cluster originalCluster(node v) const
Array< ENGLayer > m_layer
const ENGLayer & layer(int i) const
const ClusterGraph & getOriginalClusterGraph() const
ClusterArray< cluster > m_copy
bool operator<=(const RCCrossings &cr) const
ClusterArray< node > m_bottomNode
int topRank(cluster c) const
ClusterArray< int > m_topRank
RegisteredArray for labeling the clusters of a ClusterGraph.
const LHTreeNode * root() const
List< ClusterCrossing > m_lowerClusterCrossing
const ClusterGraphCopy & getClusterGraph() const
NodeArray< int > m_aeLevel
NodeArray< node > m_origNode
bool isVirtual(cluster c) const
static int compare(const RCCrossings &x, const RCCrossings &y)
LHTreeNode * child(int i)
LHTreeNode(LHTreeNode *parent, node v, Type t=Type::Node)
int aeLevel(node v) const
EdgeArray< edge > m_origEdge
NodeArray< NodeType > m_type
ClusterArray< LHTreeNode * > m_markTree
const LHTreeNode * layerHierarchyTree(int i) const
#define OGDF_NEW_DELETE
Makes the class use OGDF's memory allocator.
const LHTreeNode * down() const
RCCrossings(int cnClusters, int cnEdges)
const LHTreeNode * up() const
EdgeArray< bool > m_vertical
ClusterArray< node > m_topNode
const ClusterGraph & getOriginalClusterGraph() const
void setChild(int i, LHTreeNode *p)
List< Adjacency > m_upperAdj
Representation of clusters in a clustered graph.
bool isReversed(edge e) const
int outdeg() const
Returns the outdegree of the node.
void setParent(LHTreeNode *p)
cluster parent(node v) const
const ExtendedNestingGraph * m_pH
node origNode(node v) const
SListPure< cluster > m_markedClusters
Declaration of singly linked lists and iterators.
The parameterized class Array implements dynamic arrays of type E.
cluster original(cluster cCopy) const
ClusterCrossing(node uc, LHTreeNode *cNode, node u, LHTreeNode *uNode, edge e)
NodeArray< bool > m_aeVisited
LHTreeNode(cluster c, LHTreeNode *up)
cluster copy(cluster cOrig) const
const List< edge > & chain(edge e) const
node top(cluster cOrig) const
std::ostream & operator<<(std::ostream &os, const ogdf::Array< E, INDEX > &a)
Prints array a to output stream os.
node source() const
Returns the source node of the edge.
EdgeArray< List< edge > > m_copyEdge
Doubly linked lists (maintaining the length of the list).
RegisteredArray for nodes, edges and adjEntries of a graph.
Data type for general directed graphs (adjacency list representation).
int numberOfLayers() const
RCCrossings & setInfinity()
List< Adjacency > m_lowerAdj
int numberOfChildren() const
cluster parent(cluster c) const
NodeType type(node v) const
int bottomRank(cluster c) const
bool verticalSegment(edge e) const
List< ClusterCrossing > m_upperClusterCrossing
ClusterArray< cluster > m_mark
const LHTreeNode * child(int i) const
Basic declarations, included by all source files.
RCCrossings operator+(const RCCrossings &cr) const
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
bool isLongEdgeDummy(node v) const
Declaration and implementation of Array class and Array algorithms.
cluster originalCluster() const
Class for the representation of edges.
Derived class of GraphObserver providing additional functionality to handle clustered graphs.
Represents layer in an extended nesting graph.
Declaration of doubly linked lists and iterators.
NodeArray< int > m_auxDeg
cluster parent()
Returns the parent of the cluster.
const LHTreeNode * parent() const
Array< LHTreeNode * > m_storedChild
Adjacency(node u, LHTreeNode *vNode, int weight=1)
Representation of clustered graphs.
Class for the representation of nodes.
ClusterArray< int > m_bottomRank
Declaration of memory manager for allocating small pieces of memory.
bool operator<(const RCCrossings &cr) const
edge origEdge(edge e) const
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.