public final class InterfaceGraph extends Graph
Modifier and Type | Class and Description |
---|---|
class |
InterfaceGraph.Interface
List which updates the parent class's modCount when it is modified.
|
Constructor and Description |
---|
InterfaceGraph()
Creates a new empty InterfaceGraph with empty interfaces.
|
InterfaceGraph(Graph orig)
Creates a new InterfaceGraph which is a copy of another InterfaceGraph
or Graph.
|
Modifier and Type | Method and Description |
---|---|
void |
compose(InterfaceGraph other)
Compose another graph to this graph.
|
java.lang.Iterable<InterfaceGraph> |
getDecompositions(InterfaceGraph op)
Decomposes this InterfaceGraph in all possible ways such that the
first InterfaceGraph of the decomposition equals a given
InterfaceGraph.
|
InterfaceGraph.Interface |
getInnerInterface()
Returns the inner interface of this graph.
|
InterfaceGraph.Interface |
getLeftInterface()
Returns the inner interface of this graph.
|
InterfaceGraph.Interface |
getOuterInterface()
Returns the outer interface of this graph.
|
InterfaceGraph.Interface |
getRightInterface()
Returns the outer interface of this graph.
|
protected void |
mergeNodes(java.util.Collection<Node> nodes,
Node target)
Merges a number of nodes in the graph.
|
java.lang.String |
toString() |
java.lang.String |
toString(java.lang.String indent)
Returns a string representation of this InterfaceGraph with a
user-defined indentation string.
|
addEdge, addEdge, addNode, addNodes, getAddCount, getDelCount, getEdges, getInclusion, getInclusion, getInducedInclusion, getIsoHash, getIsolatedNodes, getModCount, getNodes, getSignature, increaseAddCount, increaseDelCount, isBinary, isDiscrete, isEmpty, isIsomorphic, mergeNodes, mergeNodes, removeEdge, removeNode, weaklyConnectedClosure, weaklyConnectedClosure
getName, hasName, setName
getAttribute, setAttribute
public InterfaceGraph()
public InterfaceGraph(Graph orig)
If the argument is an InterfaceGraph, than the new InterfaceGraph is its exact copy. Otherwise, it is a copy of the graph with two empty interfaces added.
orig
- the graph of which the new InterfaceGraph will be a copypublic InterfaceGraph.Interface getInnerInterface()
public InterfaceGraph.Interface getLeftInterface()
getInnerInterface()
.public InterfaceGraph.Interface getOuterInterface()
public InterfaceGraph.Interface getRightInterface()
getOuterInterface()
.protected void mergeNodes(java.util.Collection<Node> nodes, Node target)
Subclasses in which merging needs additional work, should override this method.
Typically, target
is an element of nodes
, although
that is not required for this method, and should neither be required
by methods that override it.
mergeNodes
in class Graph
nodes
- collection of nodes which must be mergedtarget
- the node into which all nodes will be mergedpublic void compose(InterfaceGraph other)
public java.lang.Iterable<InterfaceGraph> getDecompositions(InterfaceGraph op)
public java.lang.String toString(java.lang.String indent)