suvi.api.alg.attr
Interface NodeGroupingAttr

All Superinterfaces:
GraphLayoutAttr

public interface NodeGroupingAttr
extends GraphLayoutAttr

Node grouping attributes.

Nodes in the same group are kept in the same rank.

The basis for the design of the group attributes is the Disjoint-Set or the Union-Find data structure. The idea is that each group is represented by a single node. Each node that belongs to a specific group is then mapped to the same representative.

By mapping specific nodes to the MIN_RANK_GROUP or MAX_RANK_GROUP rank group, the client can specify that those nodes should be placed in the special minimum and maximum rank node sets.


Field Summary
static NodeGroupingAttr DEFAULT
          Default node grouping attributes.
static GraphLayoutAttrBuilderFactory DEFAULT_BUILDER_FACTORY
          Default node grouping attribute builder factory.
static java.lang.Object KEY_MAX_RANK_GROUP
          Key for textual attribute representation.
static java.lang.Object KEY_MIN_RANK_GROUP
          Key for textual attribute representation.
static java.lang.Object KEY_NODE_GROUP
          Key for textual attribute representation.
static java.lang.Object MAX_RANK_GROUP
          Placeholder that represents the group of nodes of maximum rank.
static java.lang.Object MIN_RANK_GROUP
          Placeholder that represents the group of nodes of minimum rank.
 
Method Summary
 java.lang.Object nodeGroup(java.lang.Object node)
          The object that represents the group of nodes that the given node belongs to.
 

Field Detail

KEY_NODE_GROUP

public static final java.lang.Object KEY_NODE_GROUP

Key for textual attribute representation.


KEY_MIN_RANK_GROUP

public static final java.lang.Object KEY_MIN_RANK_GROUP

Key for textual attribute representation.


KEY_MAX_RANK_GROUP

public static final java.lang.Object KEY_MAX_RANK_GROUP

Key for textual attribute representation.


MIN_RANK_GROUP

public static final java.lang.Object MIN_RANK_GROUP

Placeholder that represents the group of nodes of minimum rank.


MAX_RANK_GROUP

public static final java.lang.Object MAX_RANK_GROUP

Placeholder that represents the group of nodes of maximum rank.


DEFAULT

public static final NodeGroupingAttr DEFAULT

Default node grouping attributes. The default is that all nodes belong to their own disjoint groups, which essentially means that there is no grouping whatsoever.


DEFAULT_BUILDER_FACTORY

public static final GraphLayoutAttrBuilderFactory DEFAULT_BUILDER_FACTORY

Default node grouping attribute builder factory.

Method Detail

nodeGroup

public java.lang.Object nodeGroup(java.lang.Object node)

The object that represents the group of nodes that the given node belongs to.