See: Description
| Interface | Description |
|---|---|
| Filter |
Interface for modifying object behavior.
|
| MasterFilter<T extends org.scijava.Contextual> |
An entry point for toggling and configuring
Filters. |
| MetadataWrapper |
Wrapper for
Metadata. |
| Class | Description |
|---|---|
| AbstractFilter<T> |
Abstract superclass for
Filter implementations. |
| AbstractMetadataWrapper |
Abstract superclass for concrete implementations of
MetadataWrapper. |
| AbstractReaderFilter | |
| ChannelFiller |
For indexed color data representing true color, factors out the indices,
replacing them with the color table values directly.
|
| ChannelFillerMetadata |
MetadataWrapper implementation specifically for use
with the ChannelFiller. |
| DimensionSwapper |
Handles swapping the dimension order of an image series.
|
| DimensionSwapperMetadata |
MetadataWrapper implementation specifically for use
with the DimensionSwapper. |
| FileStitcher |
Logic to stitch together files with similar names.
|
| FileStitcherMetadata | |
| MasterFilterHelper<T extends org.scijava.Contextual> |
Helper class for
MasterFilter implementations. |
| MinMaxFilter |
Logic to compute minimum and maximum values for each plane.
|
| PlaneSeparator |
Logic to automatically separate the channels in a file.
|
| PlaneSeparatorMetadata |
MetadataWrapper implementation specifically for use
with the PlaneSeparator. |
| ReaderFilter |
MasterFilter for wrapping Reader
components. |
Filters. Filters are designed
to wrap arbitrary classes. An implementation is currently provided for
Readers: ReaderFilter.
Filters are analogous to the ReaderWrappers of Bio-Formats, but function a bit differently. In Bio-Formats, you would create a stack of ReaderWrappers based on what functionality you wanted to add to a given Reader instance.
In SCIFIO, the Filters are discoverable plugins (via the scijava-common
Context). When you create a ReaderFilter (e.g. via
InitializeService.initializeReader(org.scijava.io.location.Location)) you get the
whole stack of discovered plugins. Each can be individually configured to be
enabled by default. This allows dynamic extensibility, as new Filters can be
added to the classpath and automatically discovered and enabled.
The ReaderFilter is then passed around and functions like a normal Reader. But as plugins are enabled and disabled within the Filter, it automatically maintains the stack (based on each Filter's priority), obviating the need for user knowledge of a construction order.
Copyright © 2011–2026 SCIFIO. All rights reserved.