|
| ClusterGraphCopy () |
|
| ClusterGraphCopy (const ExtendedNestingGraph &H, const ClusterGraph &CG) |
|
cluster | copy (cluster cOrig) const |
|
const ClusterGraph & | getOriginalClusterGraph () const |
|
void | init (const ExtendedNestingGraph &H, const ClusterGraph &CG) |
|
cluster | original (cluster cCopy) const |
|
void | setParent (node v, cluster c) |
|
| ClusterGraph () |
| Creates a cluster graph associated with no graph. More...
|
|
| ClusterGraph (const ClusterGraph &C) |
| Copy constructor. More...
|
|
| ClusterGraph (const ClusterGraph &C, Graph &G) |
| Copies the underlying graph of C into G and constructs a copy of C associated with G . More...
|
|
| ClusterGraph (const ClusterGraph &C, Graph &G, ClusterArray< cluster > &originalClusterTable, NodeArray< node > &originalNodeTable) |
| Copies the underlying graph of C into G and constructs a copy of C associated with G . More...
|
|
| ClusterGraph (const ClusterGraph &C, Graph &G, ClusterArray< cluster > &originalClusterTable, NodeArray< node > &originalNodeTable, EdgeArray< edge > &edgeCopy) |
| Copies the underlying graph of C into G and constructs a copy of C associated with G . More...
|
|
| ClusterGraph (const Graph &G) |
| Creates a cluster graph associated with graph G . More...
|
|
virtual | ~ClusterGraph () |
| Destructor. More...
|
|
cluster | rootCluster () const |
| Returns the root cluster. More...
|
|
int | numberOfClusters () const |
| Returns the number of clusters. More...
|
|
int | maxClusterIndex () const |
| Returns the maximal used cluster index. More...
|
|
cluster | clusterOf (node v) const |
| Returns the cluster to which a node belongs. More...
|
|
int & | clusterDepth (cluster c) const |
| Returns depth of cluster c in cluster tree, starting with root depth 1. More...
|
|
cluster | firstCluster () const |
| Returns the first cluster in the list of all clusters. More...
|
|
cluster | lastCluster () const |
| Returns the last cluster in the list of all cluster. More...
|
|
cluster | firstPostOrderCluster () const |
| Returns the first cluster in the list of post ordered clusters. More...
|
|
template<class CLUSTERLIST > |
void | allClusters (CLUSTERLIST &clusterList) const |
| Returns the list of all clusters in clusterList . More...
|
|
void | clear () |
| Removes all clusters except for the root cluster. More...
|
|
void | init (const Graph &G) |
| Clears all cluster data and then reinitializes the instance with underlying graph G . More...
|
|
void | clearClusterTree (cluster C) |
| Removes all clusters from the cluster subtree rooted at cluster C except for cluster C itself. More...
|
|
cluster | newCluster (cluster parent, int id=-1) |
| Inserts a new cluster; makes it a child of the cluster parent . More...
|
|
cluster | createEmptyCluster (const cluster parent=nullptr, int clusterId=-1) |
| Creates an empty cluster with index clusterId and parent parent . More...
|
|
cluster | createCluster (const SList< node > &nodes, const cluster parent=nullptr) |
| Creates a new cluster containing the nodes given by nodes ; makes it a child of the cluster parent . More...
|
|
void | delCluster (cluster c) |
| Deletes cluster c . More...
|
|
void | moveCluster (cluster c, cluster newParent) |
| Moves cluster c to a new parent newParent . More...
|
|
void | reassignNode (node v, cluster c) |
| Reassigns node v to cluster c . More...
|
|
void | reInit (Graph &G) |
| Clear cluster info structure, reinitializes with underlying graph G . More...
|
|
void | copyClusterTree (const ClusterGraph &C, const Graph &G, ClusterArray< cluster > &originalClusterTable, std::function< node(node)> nodeMap=[](node v) { return v;}) |
| Constructs a cluster tree. More...
|
|
template<class NODELIST > |
void | collapse (NODELIST &nodes, Graph &G) |
| Collapses all nodes in the list nodes to the first node; multi-edges are removed. More...
|
|
cluster | chooseCluster (std::function< bool(cluster)> includeCluster=[](cluster) { return true;}, bool isFastTest=true) const |
| Returns a random cluster. More...
|
|
void | setUpdateDepth (bool b) const |
| Turns automatic update of node depth values on or off. More...
|
|
void | pullUpSubTree (cluster c) |
| Updates depth information in subtree after delCluster. More...
|
|
int | treeDepth () const |
| Computes depth of cluster tree, running time O(C). More...
|
|
void | computeSubTreeDepth (cluster c) const |
| Computes depth of cluster tree hanging at c . More...
|
|
cluster | commonCluster (SList< node > &nodes) |
| Returns lowest common cluster of nodes in list nodes . More...
|
|
cluster | commonCluster (node v, node w) const |
| Returns the lowest common cluster of v and w in the cluster tree. More...
|
|
cluster | commonClusterLastAncestors (node v, node w, cluster &c1, cluster &c2) const |
| Returns the lowest common cluster lca and the highest ancestors on the path to lca. More...
|
|
cluster | commonClusterPath (node v, node w, List< cluster > &eL) const |
| Returns lca of v and w and stores corresponding path in eL . More...
|
|
cluster | commonClusterAncestorsPath (node v, node w, cluster &c1, cluster &c2, List< cluster > &eL) const |
| Returns lca of v and w , stores corresponding path in eL and ancestors in c1 , c2 . More...
|
|
void | emptyClusters (SList< cluster > &emptyCluster, SList< cluster > *checkCluster=nullptr) |
| Returns the list of clusters that are empty or only contain empty clusters. More...
|
|
bool | emptyOnNodeDelete (cluster c) |
| Returns true if cluster c has only one node and no children. More...
|
|
bool | emptyOnClusterDelete (cluster c) |
| Returns true if cluster c has only one child and no nodes. More...
|
|
template<class EDGELIST > |
void | adjEdges (cluster c, EDGELIST &edges) const |
| Returns the list of all edges adjacent to cluster c in edges . More...
|
|
template<class ADJLIST > |
void | adjEntries (cluster c, ADJLIST &entries) const |
| Returns the list of all adjacency entries adjacent to cluster c in entries . More...
|
|
template<class LISTITERATOR > |
void | makeAdjEntries (cluster c, LISTITERATOR start) |
| Computes the adjacency entry list for cluster c . More...
|
|
bool | adjAvailable () const |
| Gets the availability status of the adjacency entries. More...
|
|
void | adjAvailable (bool val) |
| Sets the availability status of the adjacency entries. More...
|
|
bool | representsCombEmbedding () const |
| Checks the combinatorial cluster planar embedding. More...
|
|
bool | representsConnectedCombEmbedding () const |
| Checks the combinatorial cluster planar embedding. More...
|
|
void | consistencyCheck () const |
| Asserts consistency of this cluster graph. More...
|
|
| operator const Graph & () const |
| Conversion to const Graph reference (to underlying graph). More...
|
|
const Graph & | constGraph () const |
| Returns a reference to the underlying graph. More...
|
|
ClusterGraph & | operator= (const ClusterGraph &C) |
| Assignment operator. More...
|
|
bool | isKeyAssociated (cluster key) const |
|
int | calculateArraySize (int add) const |
|
int | maxKeyIndex () const |
|
cluster_iterator | begin () const |
|
cluster_iterator | end () const |
|
| GraphObserver ()=default |
| Constructs instance of GraphObserver class. More...
|
|
| GraphObserver (const Graph *G) |
| Constructs instance of GraphObserver class. More...
|
|
const Graph * | getGraph () const |
|
| Observer ()=default |
| Constructs instance of Observer class. More...
|
|
| Observer (const Observer ©)=delete |
| If you want to copy a subclass of Observer, call the default Observer() constructor and optionally also call reregister if it makes sense. More...
|
|
| Observer (Observer &&move)=delete |
| If you want to move a subclass of Observer, call the default Observer() constructor and optionally also call reregister if it makes sense. More...
|
|
virtual | ~Observer () |
| Destroys the instance, unregisters it from watched instance. More...
|
|
const Graph * | getObserved () const |
|
Observer & | operator= (const Observer ©)=delete |
|
Observer & | operator= (Observer &&move)=delete |
|
void | reregister (const Graph *obs) |
| Associates observer instance with instance obs . More...
|
|
| Observable ()=default |
|
| Observable (const Observable ©)=delete |
| If you want to copy a subclass of Observable, call the default Observable() constructor. More...
|
|
| Observable (Observable &&move)=delete |
| If you want to move a subclass of Observable, call the default Observable() constructor. More...
|
|
virtual | ~Observable () |
|
Observable & | operator= (const Observable ©)=delete |
|
Observable & | operator= (Observable &&move)=delete |
|
| RegistryBase (const RegistryBase ©)=delete |
|
| RegistryBase (RegistryBase &&move) noexcept=delete |
|
virtual | ~RegistryBase () noexcept |
| Destructor. Unregisters all associated arrays. More...
|
|
void | copyArrayEntries (int toIndex, int fromIndex) |
| Copies the entry from fromIndex to toIndex in all registered arrays. More...
|
|
int | getArraySize () const |
| Returns the current size of all registered arrays. More...
|
|
const registration_list_type & | getRegisteredArrays () const |
| Returns a reference to the list of all registered arrays. More...
|
|
bool | isAutoShrink () const |
| Returns whether the registry allows arrays to shrink when keys are removed. More...
|
|
void | keyAdded (Key key) |
| Records the addition of a new key and resizes all registered arrays if necessary. More...
|
|
void | keyRemoved (Key key) |
| Records the deletion of a key and resizes all registered arrays if auto shrink is enabled. More...
|
|
void | keysCleared () |
| Records that all keys have been cleared. If auto shrink is enabled, all arrays are cleared and resized to 0. More...
|
|
void | moveRegisterArray (registration_iterator_type it, registered_array_type *pArray) const |
| Stores array pArray at position it in the list of registered arrays. More...
|
|
RegistryBase & | operator= (const RegistryBase &other)=delete |
|
RegistryBase & | operator= (RegistryBase &&other) noexcept=delete |
|
OGDF_NODISCARD registration_iterator_type | registerArray (registered_array_type *pArray) const |
| Registers a new array with this registry. More...
|
|
void | reserveSpace (int new_keys) |
| Resizes all arrays to make space of new_keys new keys. More...
|
|
void | resizeArrays () |
| Resizes all arrays to the size requested by calculateArraySize(). Only shrinks the arrays if auto shrink is enabled. More...
|
|
void | resizeArrays (int size) |
| Resizes all arrays to size . Only shrinks the arrays if auto shrink is enabled. More...
|
|
void | resizeArrays (int size, bool shrink) |
| Resizes all arrays to size . If shrink is true , the arrays may also shrink. More...
|
|
void | setAutoShrink (bool mAutoShrink) |
| Specifies whether the registry allows arrays to shrink when keys are removed. More...
|
|
void | swapArrayEntries (int index1, int index2) |
| Swaps the entries at index1 and index2 in all registered arrays. More...
|
|
void | unregisterArray (registration_iterator_type it) const noexcept |
| Unregisters an array associated with this registry. More...
|
|
void | unregisterArrays () noexcept |
| Unregister all associated arrays. More...
|
|
|
using | cluster_iterator = internal::GraphIterator< cluster > |
| Provides a bidirectional iterator to a cluster in a clustered graph. More...
|
|
using | iterator_type = Iterator |
|
using | key_type = Key |
|
using | registered_array_type = internal::RegisteredArrayBase< Registry > |
|
using | registration_iterator_type = typename registration_list_type::iterator |
|
using | registration_list_type = std::list< registered_array_type *, OGDFAllocator< registered_array_type * > > |
|
using | registry_type = Registry |
|
static int | keyToIndex (cluster key) |
|
internal::GraphObjectContainer< ClusterElement > | clusters |
| The container containing all cluster objects. More...
|
|
void | copyLCA (const ClusterGraph &C) |
| Copies lowest common ancestor info to copy of clustered graph. More...
|
|
void | doClear () |
| Clears all cluster data. More...
|
|
cluster | doCreateCluster (const SList< node > &nodes, const cluster parent, int clusterId=-1) |
| Creates new cluster containing nodes in parameter list with index clusterId . More...
|
|
cluster | doCreateCluster (const SList< node > &nodes, SList< cluster > &emptyCluster, const cluster parent, int clusterId=-1) |
| Creates new cluster containing nodes in parameter list and stores resulting empty clusters in list, cluster has index clusterId . More...
|
|
cluster | leftMostCluster (cluster c) const |
| Leftmost cluster in subtree rooted at c, gets predecessor of subtree. More...
|
|
cluster | postOrderPredecessor (cluster c) const |
| Computes new predecessor for subtree at moved cluster c (nullptr if c is the root). More...
|
|
void | updatePostOrder (cluster c, cluster oldParent, cluster newParent) |
| Adjusts the post order structure for moved clusters. More...
|
|
void | nodeDeleted (node v) override |
| Implementation of inherited method: Updates data if node deleted. More...
|
|
void | nodeAdded (node v) override |
| Implementation of inherited method: Updates data if node added. More...
|
|
void | edgeDeleted (edge) override |
| Implementation of inherited method: Updates data if edge deleted. More...
|
|
void | edgeAdded (edge) override |
| Implementation of inherited method: Updates data if edge added. More...
|
|
void | cleared () override |
| Clears cluster data without deleting root when underlying graphs' clear method is called. More...
|
|
void | registrationChanged (const Graph *newG) override |
| Called after reregister() changed the observed instance. More...
|
|
void | clearObservers () |
|
const ListPure< ClusterGraphObserver * > & | getObservers () const |
|
| RegistryBase ()=default |
|
bool | m_depthUpToDate = false |
| Status of cluster depth information. More...
|
|
int | m_lcaNumber = 0 |
| Used to save last search run number for commoncluster. More...
|
|
std::unique_ptr< ClusterArray< int > > | m_lcaSearch |
| Used to save last search run number for commoncluster. More...
|
|
bool | m_updateDepth = false |
| Depth of clusters is always updated if set to true. More...
|
|
std::unique_ptr< ClusterArray< cluster > > | m_vAncestor |
| Used to save last search run number for commoncluster. More...
|
|
std::unique_ptr< ClusterArray< cluster > > | m_wAncestor |
| Used to save last search run number for commoncluster. More...
|
|