public abstract class GraphDrawingAlgorithm<T extends EmptyConfiguration>
extends java.lang.Object
Constructor and Description |
---|
GraphDrawingAlgorithm() |
Modifier and Type | Method and Description |
---|---|
void |
addProgressMonitor(ProgressMonitor monitor)
Add a new progress monitor to the algorithm.
|
abstract T |
defaultConfiguration()
Returns the default configuration of the generic type.
|
java.util.concurrent.Future<DrawingFrame> |
determinePositions(Graph graph,
DrawingFrame frame)
Let the algorithm determine the positions of the nodes in the graph within the given frame using the default configuration.
|
java.util.concurrent.Future<DrawingFrame> |
determinePositions(Graph graph,
DrawingFrame frame,
EmptyConfiguration configuration)
Let the algorithm determine the positions of the nodes in the given graph within the given frame using the given configuration.
|
java.util.concurrent.Future<DrawingFrame> |
determinePositionsTyped(Graph graph,
DrawingFrame frame,
T configuration)
Let the algorithm determine the positions of the nodes in the given graph within the given frame using the given configuration.
|
protected abstract DrawingFrame |
determinePositionsTypedImpl(Graph graph,
DrawingFrame frame,
T configuration) |
abstract java.lang.Class<? extends T> |
getConfigurationClass()
The class of which the configuration object should be.
|
protected void |
notifyProgressMonitors(ProgressMonitor.Progress progress) |
void |
removeProgressMonitor(ProgressMonitor monitor)
Remove the progress monitor.
|
public abstract T defaultConfiguration()
public java.util.concurrent.Future<DrawingFrame> determinePositions(Graph graph, DrawingFrame frame)
graph
- The graph with the nodes at their initial positions.frame
- The drawing frame within which the nodes should be contained. This is considered as a suggestion only.public java.util.concurrent.Future<DrawingFrame> determinePositions(Graph graph, DrawingFrame frame, EmptyConfiguration configuration)
graph
- The graph with the nodes at their initial positions.frame
- The drawing frame within which the nodes should be contained. This is considered as a suggestion only.configuration
- The algorithm configuration. If this doesn't conform to the expected type T, the default configuration is used.public java.util.concurrent.Future<DrawingFrame> determinePositionsTyped(Graph graph, DrawingFrame frame, T configuration)
graph
- The graph with the nodes at their initial positions.frame
- The drawing frame within which the nodes should be contained. This is considered as a suggestion only.configuration
- The algorithm configuration.protected abstract DrawingFrame determinePositionsTypedImpl(Graph graph, DrawingFrame frame, T configuration)
public abstract java.lang.Class<? extends T> getConfigurationClass()
public void addProgressMonitor(ProgressMonitor monitor)
monitor
- The monitor to be notified about progress.public void removeProgressMonitor(ProgressMonitor monitor)
monitor
- The monitor to remove.protected void notifyProgressMonitors(ProgressMonitor.Progress progress)