|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
int indyBagIndex(node v)
Returns independent bag index number for a vertex v.
Declaration and implementation of HashArray class.
The namespace for all OGDF objects.
bool isInnerActive(node v, cluster c) const
Includes declaration of graph class.
int numberOfBags(cluster c) const
Returns number of bags for cluster c.
const bool m_indyBags
If true, a node partition into independent bags is computed which can be used for dividing the input ...
ClusterArray< List< node > > * m_oalists
For each cluster we store the outeractive vertices. In case you want to save space,...
void computeIndyBags()
Compute independent bags per cluster and store result as vertex-indyBag index in m_indyBagNumber.
NodeArray< ClusterArray< int > * > m_oactive
bool isOuterActive(node v, cluster c) const
Returns outer activity status for vertex v wrt cluster c.
RegisteredArray for labeling the clusters of a ClusterGraph.
void cleanUp()
Deletes dynamically allocated structures.
int bagIndex(node v, cluster c)
Returns bag index number for a vertex v in cluster c.
NodeArray< ClusterArray< int > * > m_bagindex
We store the bag affiliation of the vertices for each cluster. A value of -1 indicates that the verte...
List< node > & oaNodes(cluster c)
Returns list of outeractive vertices for cluster c. The result is only valid if lists are stored,...
NodeArray< ClusterArray< int > * > m_iactive
void partitionCluster(ListConstIterator< node > &nodeIt, cluster c, HashArray< int, List< node >> &bagNodes, HashArray< int, bool > &indyBag, Skiplist< int * > &indexNumbers, Array< cluster > &bagRoots)
Runs through a list of vertices (starting with the one nodeIT points to) which is expected to be a fu...
int minOALevel(node v) const
Returns the highest (smallest) level depth for which a vertex is outer active, only initialized if ve...
ClusterArray< int > * m_bags
Number of bags per cluster (stored even if vertex list is not stored)
ClusterAnalysis(const ClusterGraph &C, bool indyBags=false)
Constructor. Performs all analyses and in case indyBags is set to true, also computes a partition int...
Representation of clusters in a clustered graph.
NodeArray< int > m_ialevel
The parameterized class Array implements dynamic arrays of type E.
int innerActive(cluster c) const
Returns number of inneractive vertices of cluster c.
Indexed arrays using hashing for element access.
ClusterArray< List< edge > > * m_lcaEdges
For each cluster c we store the edges with lca c.
int outerActive(cluster c) const
Returns number of outeractive vertices of cluster c.
NodeElement * node
The type of nodes.
RegisteredArray for nodes, edges and adjEntries of a graph.
void init()
Initialize the structures, performs analyses.
int minIALevel(node v) const
Returns the highest (smallest) level depth for which a vertex is inner active, only initialized if ve...
static const int DefaultIndex
ClusterArray< int > * m_ianum
Number of inner active vertices.
Basic declarations, included by all source files.
const bool m_storeoalists
If set to true (default) lists of outeractive vertices are stored.
List< edge > & lcaEdges(cluster c)
Returns list of edges for cluster c with lca c.
Declaration and implementation of Array class and Array algorithms.
Derived class of GraphObserver providing additional functionality to handle clustered graphs.
int minIOALevel(node v) const
Returns the highest (smallest) level depth for which a vertex is inner or outer active.
ClusterArray< int > * m_oanum
Number of outer active vertices.
Declaration of doubly linked lists and iterators.
void computeBags()
Compute bags per cluster and store result as vertex-bag index in m_bagIndex.
cluster indyBagRoot(int i)
Returns root cluster of independent bag. Note that this cluster either has direct vertex members or m...
Encapsulates a pointer to a list element.
static const int IsNotActiveBound
Representation of clustered graphs.
Class for the representation of nodes.
NodeArray< int > m_indyBagNumber
Each independent bag has a different number.
NodeArray< int > m_oalevel
int numberOfIndyBags()
Returns number of independent bags in clustergraph, -1 in case no independent bags were computed....