Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
ogdf::ClusterSetPure Class Reference

Cluster sets. More...

#include <ogdf/cluster/ClusterSet.h>

Public Member Functions

 ClusterSetPure (const ClusterGraph &C)
 Creates an empty cluster set associated with clustered graph C.
 
 ~ClusterSetPure ()
 
void clear ()
 Removes all clusters from S.
 
const ListPure< cluster > & clusters () const
 Returns a reference to the list of clusters contained in S.
 
void insert (cluster c)
 Inserts cluster c into S.
 
bool isMember (cluster c) const
 Returns true if cluster c is contained in S, false otherwise.
 
void remove (cluster c)
 Removes cluster c from S.
 

Private Attributes

ListPure< clusterm_clusters
 The list of clusters contained in S.
 
ClusterArray< ListIterator< cluster > > m_it
 m_it[c] contains the list iterator pointing to c if c is contained in S, an invalid list iterator otherwise.
 

Detailed Description

Cluster sets.

A cluster set maintains a subset S of the clusters contained in an associated clustered graph. This kind of cluster set provides efficient operations for testing membership, insertion and deletion of elements, and clearing the set.

In contrast to ClusterSet, a ClusterSetPure does not provide efficient access to the number of clusters stored in the set.

See also
ClusterSet, ClusterSetSimple

Definition at line 126 of file ClusterSet.h.

Constructor & Destructor Documentation

◆ ClusterSetPure()

ogdf::ClusterSetPure::ClusterSetPure ( const ClusterGraph C)
inlineexplicit

Creates an empty cluster set associated with clustered graph C.

Definition at line 129 of file ClusterSet.h.

◆ ~ClusterSetPure()

ogdf::ClusterSetPure::~ClusterSetPure ( )
inline

Definition at line 132 of file ClusterSet.h.

Member Function Documentation

◆ clear()

void ogdf::ClusterSetPure::clear ( )
inline

Removes all clusters from S.

After this operation, S is empty and still associated with the same clustered graph. The runtime of this operations is O(k), where k is the number of clusters in S before this operation.

Definition at line 169 of file ClusterSet.h.

◆ clusters()

const ListPure< cluster > & ogdf::ClusterSetPure::clusters ( ) const
inline

Returns a reference to the list of clusters contained in S.

This list can be used for iterating over all clusters in S.

Definition at line 192 of file ClusterSet.h.

◆ insert()

void ogdf::ClusterSetPure::insert ( cluster  c)
inline

Inserts cluster c into S.

This operation has constant runtime.

Precondition
c is a cluster in the associated clustered graph.

Definition at line 140 of file ClusterSet.h.

◆ isMember()

bool ogdf::ClusterSetPure::isMember ( cluster  c) const
inline

Returns true if cluster c is contained in S, false otherwise.

This operation has constant runtime.

Precondition
c is a cluster in the associated graph.

Definition at line 183 of file ClusterSet.h.

◆ remove()

void ogdf::ClusterSetPure::remove ( cluster  c)
inline

Removes cluster c from S.

This operation has constant runtime.

Precondition
c is a cluster in the associated clustered graph.

Definition at line 154 of file ClusterSet.h.

Member Data Documentation

◆ m_clusters

ListPure<cluster> ogdf::ClusterSetPure::m_clusters
private

The list of clusters contained in S.

Definition at line 200 of file ClusterSet.h.

◆ m_it

ClusterArray<ListIterator<cluster> > ogdf::ClusterSetPure::m_it
private

m_it[c] contains the list iterator pointing to c if c is contained in S, an invalid list iterator otherwise.

Definition at line 197 of file ClusterSet.h.


The documentation for this class was generated from the following file: