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 Details

    • getName

      String getName()
      Returns the name (ID) of the algorithm.
      Returns:
      DOCUMENT ME!
    • setParameters

      void setParameters​(Parameter[] params)
      Sets the parameters for this algorithm. Must have the same types and order as the array returned by getParameter.
    • getParameters

      Parameter[] getParameters()
      Returns a list of Parameter that are set for this algorithm.
      Returns:
      a collection of Parameter that are needed by the Algorithm.
    • attach

      void attach​(Graph g, Selection selection)
      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

      void check() throws PreconditionException
      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 String 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

      Set<Category> 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

      void setActionEvent​(ActionEvent a)
    • getActionEvent

      ActionEvent getActionEvent()
    • mayWorkOnMultipleGraphs

      boolean mayWorkOnMultipleGraphs()