public interface SciJavaPlugin
Plugin
.
What all plugins have in common is that they are declared using an annotation
(@Plugin
), and discovered if present on the classpath at runtime.
The core types of plugins are as follows:
App
- metadata about a SciJava application.Command
- plugins that are executable. These
plugins typically perform a discrete operation, and are accessible via the
application menus.ConsoleArgument
- plugins that handle
arguments passed to the application as command line parameters.Converter
- plugins which translate objects
between data types.Display
- plugins that visualize objects,
often used to display module outputs.IOPlugin
- plugins that read or write data.PreprocessorPlugin
- plugins that
perform preprocessing on modules. A preprocessor plugin is a discoverable
ModulePreprocessor
.PostprocessorPlugin
- plugins that
perform postprocessing on modules. A
PostprocessorPlugin
is a discoverable
ModulePostprocessor
.Platform
- plugins for defining
platform-specific behavior.ScriptLanguage
- plugins that enable executing
scripts in particular languages as SciJava modules.Service
- plugins that define new API in a
particular area.Tool
- plugins that map user input (e.g.,
keyboard and mouse actions) to behavior. They are usually rendered as icons
in the application toolbar.InputWidget
- plugins that render UI widgets
for the InputHarvester
preprocessor.Plugin
,
PluginService
Copyright © 2015–2022 SciJava. All rights reserved.