|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecthelix.graph.algo.c3part.C3PartUtil
public class C3PartUtil
Utilities for C3Part algorithms Note: for readability, we use uppercase characters for parameters holding nodes of the multigraph (e.g. V, U) and lowercase characters for nodes of the datagraph (e.g. v, u). A node of the multigraph is called a 'multinode' and a node of the datagraph is called a 'datanode'. Note: some part of the code (marked as @concurrent) are specific to the concurrent version. you may ignore them for the non-concurrent version
Field Summary | |
---|---|
static String |
Nodes
the tuple associated to a node of the multigraph |
static String |
Optimizer
the local optimizer : experimental section |
Method Summary | |
---|---|
static void |
addAlias(Vertex V,
Vertex Alias)
add alias into multinode V (also set root of V to Root) |
static void |
addNode(Vertex V,
Vertex v)
add datanode v in tuples of a multinode V |
static void |
addSon(Vertex V,
Vertex Son)
add son into multinode V |
static int |
countStars(Vertex V)
count number of stars in multinode V |
static RVertexSet |
getAliases(Vertex V)
get multinodes aliases of a multinode V (V is called a root multinode) and create an empty RVertexSet if it does not exist. |
static Vertex |
getLastNode(Vertex V)
get last datanode of a multinode V Last(V) = vk / Nodes(V) = (v1, ..., vk) |
static Vertex |
getMultinode(Vertex v)
get the multinode V such that Nodes(V) = (v) this is used in multigraph initialisation to retrieve the multinode V that has been build from v. |
static RVertexList |
getNodes(Vertex V)
get datanodes tuple of a multinode V (i.e. |
static ColorOptimizer |
getOptimizer(Registry r)
get the color optimizer attached to the registry |
static RColorSet |
getPseudoColors(Vertex V,
Vertex U)
compute pseudo colors of edge (U, V) using the datagraph (i.e not relying on an actual edge). |
static Vertex |
getRoot(Vertex V)
get root of multinode V return null if V is not an Alias Node |
static Vertex |
getSon(Vertex V,
Vertex terminal)
get the multinode son of a multinode V, that ends with specified terminals. |
static RVertexSet |
getSons(Vertex V)
get multinodes sons of a multinode V and create an empty RVertexSet if it does not exist. |
static RColorSet |
getTrueColors(Vertex V,
Vertex U)
compute true colors of edge (U, V) using the datagraph (i.e not relying on an actual edge). |
static boolean |
hasAlias(Vertex V)
tell if multinode V has aliases i.e. |
static boolean |
hasRoot(Vertex V)
tell if multinode V has a root node i.e. |
static boolean |
hasSon(Vertex V)
tell if multinode V has son(s) |
static boolean |
isCoreNode(Vertex V)
tell if multinode V has no star. |
static boolean |
isFullStar(Vertex V)
tell if multinode V is a full star (also called the 'black' star) i.e if all of its datanodes are stars |
static boolean |
isPartialStar(Vertex V)
tell if multinode V is a partial star on at least one color but not a full star |
static boolean |
isStar(Vertex v)
tell if datanode v is a star (*) note: there are different ways to detect '*' the quickest for now is that '*' is (should be) the only colorless datanode |
static void |
removeAlias(Vertex V,
Vertex Alias)
remove alias from multinode |
static void |
removeAliases(Iterable<Vertex> iterable)
|
static void |
removeAliases(Vertex V)
remove all aliases from multinode V (also remove root from Aliases(V)) |
static void |
removeMultinode(Vertex v)
remove multinode V from datanode v |
static void |
removeRoot(Iterable<Vertex> iterable)
|
static void |
removeRoot(Vertex V)
remove root from multinode V (and remove V from its root aliases) |
static void |
removeSons(Iterable<Vertex> iterable)
|
static void |
removeSons(Vertex V)
remove all sons from multinode V |
static void |
setMultinode(Vertex v,
Vertex V)
record in datanode v the multinode V such that Nodes(V) = (v). |
static void |
setOptimizer(Registry r,
ColorOptimizer optimizer)
set the color optimizer into the registry |
static void |
setRoot(Vertex V,
Vertex Root)
record Root multinode in multinode V (also add V in Aliases(Root)) |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String Nodes
public static final String Optimizer
Method Detail |
---|
public static final RVertexList getNodes(Vertex V)
public static final void addNode(Vertex V, Vertex v)
public static final Vertex getLastNode(Vertex V)
public static final Vertex getMultinode(Vertex v)
public static final void setMultinode(Vertex v, Vertex V)
public static final void removeMultinode(Vertex v)
public static final boolean isStar(Vertex v)
public static final int countStars(Vertex V)
public static final boolean isFullStar(Vertex V)
public static final boolean isPartialStar(Vertex V)
public static final boolean isCoreNode(Vertex V)
public static final RVertexSet getSons(Vertex V)
public static final Vertex getSon(Vertex V, Vertex terminal)
public static final void addSon(Vertex V, Vertex Son)
public static final boolean hasSon(Vertex V)
public static final void removeSons(Vertex V)
public static final void removeSons(Iterable<Vertex> iterable)
public static final RVertexSet getAliases(Vertex V)
public static final void addAlias(Vertex V, Vertex Alias)
public static final boolean hasAlias(Vertex V)
public static final void removeAlias(Vertex V, Vertex Alias)
public static final void removeAliases(Vertex V)
public static final void removeAliases(Iterable<Vertex> iterable)
public static final Vertex getRoot(Vertex V)
public static final void setRoot(Vertex V, Vertex Root)
public static final boolean hasRoot(Vertex V)
public static final void removeRoot(Vertex V)
public static final void removeRoot(Iterable<Vertex> iterable)
public static final ColorOptimizer getOptimizer(Registry r)
public static final void setOptimizer(Registry r, ColorOptimizer optimizer)
public static final RColorSet getTrueColors(Vertex V, Vertex U)
public static RColorSet getPseudoColors(Vertex V, Vertex U)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |