Constructor and Description |
---|
DAGraphImpl(java.util.List<T> collection,
boolean[][] directlyCauses)
This constructor create a directed acyclic graph and deduce eventually
follows relation from directlyCauses
|
DAGraphImpl(java.util.List<T> collection,
boolean[][] directlyCauses,
boolean[][] eventuallyCauses) |
Modifier and Type | Method and Description |
---|---|
static boolean[][] |
computeEventuallyWarshall(boolean[][] directlyCauses) |
java.util.List<T> |
getConcurrentNodes(T node) |
java.util.List<T> |
getDirectlyPredecessors(T node) |
java.util.List<T> |
getDirectlySuccessors(T node) |
java.util.List<T> |
getEventuallyPredecessors(T node) |
java.util.List<T> |
getEventuallySuccessors(T node) |
java.util.Set<T> |
getNodes() |
boolean |
isDirectlyCauses(T source,
T target) |
boolean |
isEventuallyCauses(T source,
T target) |
DAGraph<T> |
projectOn(java.util.List<T> nodes)
Creates a new DAGraph, projects this DAGraph on the set of nodes, and
copies directly-follows and eventually-follows relations of the nodes.
|
public DAGraphImpl(java.util.List<T> collection, boolean[][] directlyCauses)
collection
- directlyCauses
- public DAGraphImpl(java.util.List<T> collection, boolean[][] directlyCauses, boolean[][] eventuallyCauses)
public DAGraph<T> projectOn(java.util.List<T> nodes)
public static boolean[][] computeEventuallyWarshall(boolean[][] directlyCauses)
public java.util.Set<T> getNodes()
public java.util.List<T> getConcurrentNodes(T node)
getConcurrentNodes
in interface DAGraph<T extends TNode>
public java.util.List<T> getDirectlyPredecessors(T node)
getDirectlyPredecessors
in interface DAGraph<T extends TNode>
public java.util.List<T> getEventuallyPredecessors(T node)
getEventuallyPredecessors
in interface DAGraph<T extends TNode>
public java.util.List<T> getDirectlySuccessors(T node)
getDirectlySuccessors
in interface DAGraph<T extends TNode>
public java.util.List<T> getEventuallySuccessors(T node)
getEventuallySuccessors
in interface DAGraph<T extends TNode>
public boolean isDirectlyCauses(T source, T target)
isDirectlyCauses
in interface DAGraph<T extends TNode>