the vertices for this hierarchy
whether or not to tighten vertices towards the sources
Variable: SOURCESCANSTARTRANK
High value to start source layering scan rank value from.
Variable: dfsCount
Count of the number of times the ancestor dfs has been used.
Variable: edgeMapper
Map from graph edges to internal model edges
Variable: maxRank
Stores the largest rank number allocated
Variable: parent
The parent cell whose children are being laid out
Variable: ranks
Mapping from rank number to actual rank
Variable: ranksPerGroup
An array of the number of ranks within each swimlane
Variable: roots
Store of roots of this hierarchy model, these are real graph cells, not internal cells
Variable: tightenToSource
Whether or not to tighten the assigned ranks of vertices up towards the source cells.
Variable: vertexMapper
Map from graph vertices to internal model nodes.
Creates all edges in the internal model
Reference to the
Array of
The array of
Performs a depth first search on the internal hierarchy model
the parent internal node of the current internal node
the current internal node
the internal edge connecting the internal node and the parent internal node, if any
the visitor pattern to be called for each node
a set of all nodes seen by this dfs a set of all of the ancestor node of the current node
the layer on the dfs tree ( not the same as the model ranks )
Performs a depth first search on the internal hierarchy model. This dfs extends the default version by keeping track of cells ancestors, but it should be only used when necessary because of it can be computationally intensive for deep searches.
the parent internal node of the current internal node
the current internal node
the internal edge connecting the internal node and the parent internal node, if any
the visitor pattern to be called for each node
a set of all nodes seen by this dfs
the parent hash code
the new hash code for this node
the layer on the dfs tree ( not the same as the model ranks )
Fixes the layer assignments to the values stored in the nodes. Also needs to create dummy nodes for edges that cross layers.
Basic determination of minimum layer ranking by working from from sources or sinks and working through each node in the relevant edge direction. Starting at the sinks is basically a longest path layering algorithm.
Performs a depth first search on the internal hierarchy model. This dfs extends the default version by keeping track of chains within groups. Any cycles should be removed prior to running, but previously seen cells are ignored.
the parent internal node of the current internal node
the current internal node
the internal edge connecting the internal node and the parent internal node, if any
a set of all nodes seen by this dfs
the number of edges in the chain of vertices going through the current swimlane
A depth first search through the internal heirarchy model.
The visitor function pattern to be called for each node.
Whether or not the search is to keep track all nodes directly above this one in the search path.
Generated using TypeDoc
Internal model of a hierarchical graph. This model stores nodes and edges equivalent to the real graph nodes and edges, but also stores the rank of the cells, the order within the ranks and the new candidate locations of cells. The internal model also reverses edge direction were appropriate , ignores self-loop and groups parallels together under one edge object.