Package org.graffiti.plugin.algorithm
Interface Algorithm
- All Known Subinterfaces:
AnimatedAlgorithm,CalculatingAlgorithm,EditorAlgorithm
- All Known Implementing Classes:
AbstractAlgorithm,AbstractAnimatedAlgorithm,AbstractEditorAlgorithm,AbstractExperimentDataProcessor,AbstractThreadSaveLayoutAlgorithm,AddDiagramLegendAlgorithm,AddInterestingAttributes,AdditionalIdentifiersAlgorithm,AddRandomClusterInformationAlgorithm,AllPathsSelectionAlgorithm,AlternativeIDannotationStatistics,ApplyAlternativeIdentifiersTo,ApplyGraphLayout,ArrayLayout,BackgroundAlgorithm,BackgroundExecutionAlgorithm,BarabasiAlbertGraphGenerator,BeanShellDesktopAlgorithm,BendsLaunchGUI,BringToFrontOrBackAlgorithm,BundleParallelEdges,CalculateAttribute,CenterLayouterAlgorithm,ChangeEdgeStyle,ChangeElementStyle,ChangeLabelsAlgorithm,ChangeNodeStyle,CircleLayouterAlgorithm,CircleLayouterWithMinimumCrossingsAlgorithm,CircleSearchAndLayoutAlgorithm,ClearSelection,CloseAllWindows,ClusterGraphLayout,ClusterHistogramFisherTest,ClusterIndividualLayout,ClusterOverviewNetworkLaunchGui,ColorizeAlgorithm,ColorizeSuperGraphAlgorithm,ColorScaleLegendAlgorithm,CombineMappingData,ComputeAttributesAlgorithm,ConnectedComponentLayout,CopyDataTableAlgorithm,CopyPatternLayoutAlgorithm,CountCircularCrossingsAlgorithm,CreateClusterGraphAlgorithm,CreateDirectChildrenClustersHistogramAlgorithm,CreateDistanceMatrixAlgorithm,CreateFuncatGraphAlgorithm,CreateGOchildrenAverageDataDiagramAlgorithm,CreateGOchildrenClustersHistogramAlgorithm,CreateGOchildrenTtestHistogramAlgorithm,CreateGOtreeAlgorithm,CreateHierarchyTree,CreateKEGGOrthologyGraphAlgorithm,CreateKeggReactionNetworkAlgorithm,CreateOrgSpecificSuperGraphsAlgorithm,DataMapping,DavidTestAlgorithm,DeleteNodesAlgorithm,DotLayoutAlgorithm,DuplicateEdge,EdgeRoutingAlgorithm,EnrichHiddenLabelsAlgorithm,ErdosRenyiGraphGenerator,EvaluateKGML,ExchangeNodePositionsAlgorithm,ExpandReduceLayouterAlgorithm,ExpandSelectionAlgorithm,ExportDataTableAlgorithm,ExtractMappingDataAlgorithm,FindReplaceDialog,FishEyeLayout,ForceDirectedEdgeLayout,ForceDirectedLayoutWrapper,GraphicExport,GraphTreeLayout,GridLayoutAlgorithm,GridLayouterAlgorithm,GridPlacementAlgorithm,GrubbsTestAlgorithm,HammingDistanceAlgorithm,HideOrShowChildNodes,HierarchyAlgorithm,HierarchyAlgorithms,HierarchyWizard,ImageAssignmentCommand,InterpreteGOtermsAlgorithm,InterpreteParentGOtermsAlgorithm,IntroduceBendsAlgorithm,IntroduceParallelEdgeBends,IntroduceSelfEdgeBends,InverseGraphPluginAlgorithm,InvertSelectionAlgorithm,IterateGridPlacementLayout,LaunchGui,LinesToSubstancesAlgorithm,LinkSelection,MergeNodes,MergeWindowsAlgorithm,MultiDataView,MultilevelFrameworkLayout,MultiTreeLayout,NaivePatternFinderAlgorithm,NoOverlappLayoutAlgorithm,NoOverlappLayoutAlgorithmAS,NoOverlappOfClustersAlgorithm,NullLayoutAlgorithm,NumberNodesAndEdgesAlgorithm,PajekClusterColor,PathwayReferenceAlgorithm,PathwayReferenceAutoCreationAlgorithm,PatternSpringembedder,PatternSpringembedder,PatternSpringembedder3d,PDFAlgorithm,PDFSVGAlgorithm,PngJpegAlgorithm,PPTAlgorithm,PrintAlgorithm,ProcessHierarchynodesDepOnLeafNodes,PruneTreeAlgorithm,PutIntoSidePanel,RadialTreeLayout,RandomLayouterAlgorithm,RatioViewAlgorithm,RecolorEdgesAlgorithm,RecreateView,RemoveBendsAlgorithm,RemoveHiddenLabelsAlgorithm,RemoveMappingDataAlgorithm,RemoveParallelEdges,RemoveParenthesisLabels,RemoveSelectedNodesPreserveEdgesAlgorithm,ReplaceDiagramTitleFromAlternativeSubstanceNames,ReplaceLabelAlgorithm,ReplaceLabelFromAlternativeSubstanceNames,ResetEdgeSourceOrTarget,ResizeFromMappingCountLayoutAlgorithm,ResizeNodesDepDegreeAlgorithm,RestoreLabelAlgorithm,RotateAlgorithm,RTTreeLayout,SearchAndSelecAlgorithm,SelectAlgorithm,SelectClusterAlgorithm,SelectCompoundsAlgorithm,SelectEdgesAlgorithm,SelectEnzymesAlgorithm,SelectGenesAlgorithm,SelectLeafNodesAlgorithm,SelectMapNodesAlgorithm,SelectMapTitleNodesAlgorithm,SelectNodesWithExperimentalDataAlgorithm,SelectReactionsAlgorithm,SelectWindowsAlgorithm,SetBackgroundColorAlgorithm,SetClusterInfoAlgorithm,SetClusterInfoFromLabelAlgorithm,SetClusterInfoFromSubgraphAlgorithm,SetClusterLaunchGui,SetNumericAttributeFromDataAlgorithm,SetToolTipAlgorithm,SetURLAlgorithm,ShortestPathSelectionAlgorithm,ShowClusterGraphAlgorithm,ShowLayoutTab,ShowOrHideImageAttributesAlgorithm,ShowStatisticsTab,SOManalysis,SOMclusterAnalysis,SOMclusterAnalysisDoCluster,SOMprintDataset,SortIntoCluster,SplitNodeForSingleMappingData,SpringEmbedderAlgorithm,StartLayoutAlgorithm,StressMinimizationLayout,SubstanceRatioCalculationAlgorithm,SVGAlgorithm,ThreadSafeAlgorithm,TranspathPathwayLoader,UserMappingAlgorithm,WattsStrogatzGraphGenerator,WebsiteGeneration,WeightedShortestPathSelectionAlgorithm,WindowSettings
public interface Algorithm
An
Algorithm has to provide a function that returns an array of
Parameters it needs, in order to give user interfaces the
possibility to provide the Algorithm with appropriate.
parameters.- Version:
- $Revision: 1.6 $
-
Method Summary
Modifier and Type Method Description voidattach(Graph g, Selection selection)Attaches the given graph to this algorithm.voidcheck()Checks whether all preconditions of the current graph are satisfied.voidexecute()Executes the whole algorithm.KeyStrokegetAcceleratorKeyStroke()Override this method to provide a accelerator hot key for the algorithm.ActionEventgetActionEvent()StringgetCategory()Deprecated.Please, use getSetCategory().StringgetDescription()StringgetMenuCategory()Returns a path to a menu category.StringgetName()Returns the name (ID) of the algorithm.Parameter[]getParameters()Returns a list ofParameterthat are set for this algorithm.Set<Category>getSetCategory()Returns a set of categories to classify this algorithm .booleanisLayoutAlgorithm()A LayoutAlgorithm should return true.booleanmayWorkOnMultipleGraphs()voidreset()Resets the internal state of the algorithm.voidsetActionEvent(ActionEvent a)voidsetParameters(Parameter[] params)Sets the parameters for this algorithm.booleanshowMenuIcon()Override this method to give a different look and feel to the application, and to put the plugin icon next to the menu item in the main menu bar.
-
Method Details
-
getName
String getName()Returns the name (ID) of the algorithm.- Returns:
- DOCUMENT ME!
-
setParameters
Sets the parameters for this algorithm. Must have the same types and order as the array returned bygetParameter. -
getParameters
Parameter[] getParameters()Returns a list ofParameterthat are set for this algorithm.- Returns:
- a collection of
Parameterthat are needed by theAlgorithm.
-
attach
Attaches the given graph to this algorithm. A ttaches the given Selection information to the algorithm.- Parameters:
g- the graph to attach.selection- the selection to attach.
-
check
Checks whether all preconditions of the current graph are satisfied.- Throws:
PreconditionException- if the preconditions of the current graph are not satisfied.
-
execute
void execute()Executes the whole algorithm. -
reset
void reset()Resets the internal state of the algorithm. -
getCategory
Deprecated.Please, use getSetCategory(). To put this algorithm into a menu, use getMenuCategory()Returns the category an algorithm should assigned to. Return NULL if the algorithm should be sorted directly in the plugin menu.- Returns:
- The category an algorithm should assigned to.
-
getSetCategory
Returns a set of categories to classify this algorithm . e.g. return new HashSet(Arrays.asList( Category.GRAPH, Category.NODE )); is an algorithm, working on graphs and more specific on nodes - Returns:
- Set of Category Enums that classify this algorithm.
-
getMenuCategory
String getMenuCategory()Returns a path to a menu category. This is s '.' separated string which reflects the position of this Algorithm in the Menu Hierarchy e.g. "Network.Layout" would put this algorithm in the menu 'Network' and its submenu 'Layout' If this menu is not existent it will be created If this method returns 'null' the algorithm will not appear in the menu- Returns:
-
isLayoutAlgorithm
boolean isLayoutAlgorithm()A LayoutAlgorithm should return true. All other types of algorithms should return false.- Returns:
-
showMenuIcon
boolean showMenuIcon()Override this method to give a different look and feel to the application, and to put the plugin icon next to the menu item in the main menu bar.- Returns:
- True, if the plugin icon should be shown next to the menu item. Return FALSE (default!), if no icon should be shown in the menu.
-
getAcceleratorKeyStroke
KeyStroke getAcceleratorKeyStroke()Override this method to provide a accelerator hot key for the algorithm.- Returns:
- NULL (default) if no accelerator should be assigned for this algorithm.
-
getDescription
String getDescription() -
setActionEvent
-
getActionEvent
ActionEvent getActionEvent() -
mayWorkOnMultipleGraphs
boolean mayWorkOnMultipleGraphs()
-