public class PartitionLayout extends AbstractLayoutStage
PartitionLayout
provides a framework for layouts that are based on a divide and conquer approach.
PartitionFinder
.
CoreLayout
.
PartitionPlacer
.
InterEdgeRouter
Modifier and Type | Class and Description |
---|---|
static interface |
PartitionLayout.IInterEdgeRouter
An
PartitionLayout.IInterEdgeRouter is responsible for routing inter-edges. |
static interface |
PartitionLayout.IPartitionFinder
A
PartitionLayout.IPartitionFinder is responsible for partitioning the input graph. |
static interface |
PartitionLayout.IPartitionPlacer
A
PartitionLayout.IPartitionPlacer is responsible for arranging the graph partitions. |
Constructor and Description |
---|
PartitionLayout()
Creates a new
PartitionLayout instance with default settings. |
Modifier and Type | Method and Description |
---|---|
void |
applyLayout(LayoutGraph graph)
Arranges and places independent partitions in the graph.
|
PartitionLayout.IInterEdgeRouter |
getInterEdgeRouter()
Gets the
PartitionLayout.IInterEdgeRouter instance that is responsible for inter-edge routing. |
PartitionLayout.IPartitionFinder |
getPartitionFinder()
Gets the
PartitionLayout.IPartitionFinder instance that is responsible for partitioning the input graph. |
PartitionLayout.IPartitionPlacer |
getPartitionPlacer()
Gets the
PartitionLayout.IPartitionPlacer instance that is responsible for arranging the graph partitions. |
void |
setInterEdgeRouter(PartitionLayout.IInterEdgeRouter value)
Sets the
PartitionLayout.IInterEdgeRouter instance that is responsible for inter-edge routing. |
void |
setPartitionFinder(PartitionLayout.IPartitionFinder value)
Sets the
PartitionLayout.IPartitionFinder instance that is responsible for partitioning the input graph. |
void |
setPartitionPlacer(PartitionLayout.IPartitionPlacer value)
Sets the
PartitionLayout.IPartitionPlacer instance that is responsible for arranging the graph partitions. |
applyLayoutCore, getCoreLayout, setCoreLayout
public PartitionLayout()
PartitionLayout
instance with default settings.public void applyLayout(LayoutGraph graph)
applyLayout
in interface ILayoutAlgorithm
applyLayout
in class AbstractLayoutStage
IllegalStateException
- if the partition finder
is null
graph
- the input graphpublic PartitionLayout.IInterEdgeRouter getInterEdgeRouter()
PartitionLayout.IInterEdgeRouter
instance that is responsible for inter-edge routing.null
. PartitionLayout.IInterEdgeRouter
that is usedsetInterEdgeRouter(IInterEdgeRouter)
public PartitionLayout.IPartitionFinder getPartitionFinder()
PartitionLayout.IPartitionFinder
instance that is responsible for partitioning the input graph.null
. PartitionLayout.IPartitionFinder
that is usedsetPartitionFinder(IPartitionFinder)
public PartitionLayout.IPartitionPlacer getPartitionPlacer()
PartitionLayout.IPartitionPlacer
instance that is responsible for arranging the graph partitions.null
. PartitionLayout.IPartitionPlacer
that is usedsetPartitionPlacer(IPartitionPlacer)
public void setInterEdgeRouter(PartitionLayout.IInterEdgeRouter value)
PartitionLayout.IInterEdgeRouter
instance that is responsible for inter-edge routing.null
. value
- the PartitionLayout.IInterEdgeRouter
that is usedgetInterEdgeRouter()
public void setPartitionFinder(PartitionLayout.IPartitionFinder value)
PartitionLayout.IPartitionFinder
instance that is responsible for partitioning the input graph.null
. value
- the PartitionLayout.IPartitionFinder
that is usedgetPartitionFinder()
public void setPartitionPlacer(PartitionLayout.IPartitionPlacer value)
PartitionLayout.IPartitionPlacer
instance that is responsible for arranging the graph partitions.null
. value
- the PartitionLayout.IPartitionPlacer
that is usedgetPartitionPlacer()